有办法知道用户按了什么键吗, 你可以在ONKEYUP或ONKEYDOWN抓就行了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以在ONKEYUP或ONKEYDOWN抓就行了(如果是控件的话)。否则要用上HOOK。我以前写过一些关于HOOK的你可以查一下。 先把Form的keyPreview设置为true.判断字母按键或enter按键:procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);begin case key of #13: {用户按了enter以后程序的反应} //#13代表Enter键 'a': {用户按了a以后程序的反应}; 'b': {用户按了b以后程序的反应}; 'c': {用户按了c以后程序的反应}; ... end;end;判断shift,alt,ctrl状态:procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);beginif [ssShift] = shift then lblShowShift.Caption := 'shift被按下啦!';if [ssShift , ssAlt] = shift then lblshowshift.Caption := 'shift和alt同时被按下啦!';if [ssShift , ssAlt, ssCtrl] = shift then lblshowshift.Caption := 'shift和alt,还有Ctrl,都按下啦!';end;应该够清楚了吧? :) 将Form的keypreview设为true ,在Form的onkeypress中写入代码就可以了 纠正,应该在OnKeyDown中响应,另回车可用VK_RETURN表示 delphi如何实现厨房打印 代码看不明白。大虾帮忙。 在SQL 2K里.怎麼樣判斷一個庫里以經存在了一個表. 关于XLGrid控件 请问如何将QuickRep 报表保存为一个word 文件? 求一个给字符串加密的函数,一个给字符串解密的函数。 如何把DELPHI运行下的所有文件打包成一个exe的文件 我用的 SQL Server2000个人版,请问可以在局域网上实现数访问和存储吗?高分回抱! 我这样写为什么不行 如何通过代码给某一字段赋NULL值? 有关变量的问题 非计算机专业学生的困惑。。。。。(再转)
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
case key of
#13: {用户按了enter以后程序的反应} //#13代表Enter键
'a': {用户按了a以后程序的反应};
'b': {用户按了b以后程序的反应};
'c': {用户按了c以后程序的反应};
...
end;
end;判断shift,alt,ctrl状态:procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if [ssShift] = shift then lblShowShift.Caption := 'shift被按下啦!';
if [ssShift , ssAlt] = shift then lblshowshift.Caption := 'shift和alt同时被按下啦!';
if [ssShift , ssAlt, ssCtrl] = shift then lblshowshift.Caption := 'shift和alt,还有Ctrl,都按下啦!';
end;应该够清楚了吧? :)