是否可以使用FreePascal测试是否按下了特定键?

问题描述 投票:-1回答:1

我希望能够编写一个FreePascal函数,例如:

function KeyIsPressed(ch: char): boolean;

仅当在执行时按下与字符ch对应的键时,返回true。此函数应允许使用以下结构:]

if KeyIsPressed('a') and KeyIsPressed('b') and not KeyIsPressed('c') then ...

[且仅当同时按下'a'和'b'而未按下'c时,显然返回true。

仅供参考,我正在跑步:

Free Pascal Compiler version 3.0.4+dfsg-18ubuntu2 [2018/08/29] for x86_64
Copyright (c) 1993-2017 by Florian Klaempfl and others

PS1:我不在乎键盘缓冲区是否开始填满,此后一个问题可以单独处理。

PS2:我确实注意到了有关其他编程语言的类似问题,但是不幸的是,这些问题对Pascal没有用。

keyboard freepascal
1个回答
0
投票

仅看单元Crt和/或键盘的实现。他们做那些事。但是它们从已经“煮熟”的标准输入中捕获键盘数据。

很难解决这个问题。要找出难于使用的键盘组合,请尝试文本模式IDE的“示教键”功能,该功能基本上显示了“键盘”单元功能]

© www.soinside.com 2019 - 2024. All rights reserved.