type
TForm1 = class(TForm)
……
protected
procedure WndProc(var Message: TMessage);override;
……procedure TForm1.WndProc(var Message: TMessage);
begin
if Message.Msg = WM_KEYDOWN then
showMessage('key pressed')
else
inherited;
end;在showMessage处设置断点,发现截取不到WM_KEYDOWN消息,但是把WM_KEYDOWN换为WM_MOUSEMOVE却可以执行showMessage,这是什么原因呢?
谢谢!
TForm1 = class(TForm)
……
protected
procedure WndProc(var Message: TMessage);override;
……procedure TForm1.WndProc(var Message: TMessage);
begin
if Message.Msg = WM_KEYDOWN then
showMessage('key pressed')
else
inherited;
end;在showMessage处设置断点,发现截取不到WM_KEYDOWN消息,但是把WM_KEYDOWN换为WM_MOUSEMOVE却可以执行showMessage,这是什么原因呢?
谢谢!
解决方案 »
- RemObjects 客户端 提示 Channel is busy. Try again later.
- 【向tjianliang提问】正月十五
- delphi学习日记之数据库(上)
- playSound大多wav都能放,有些就叮一声是什么问题?
- 寻求用DSPack开发包开发视频采集方面的高手,可以付money,高手进来看看
- 在实际中是不是用delphi开发web应用程序很少??
- 关于Delphi中记录的定位问题,有点不太习惯,希望大家来讨论
- Dos下我看不到F/G盘
- 怎样将窗体的系统关闭按钮屏蔽
- 关于写批处理文件的问题----------记得dos的朋友请进...
- 如何将JPG格式的图像放大和缩小,请高手指点!!!!
- 很简单的代码逻辑,为什么会出错呢?
焦点在edit上,WM_KEYDOWN是edit的,不是form
谢谢!
对于OnKeyPress事件,不论你在这个函数中写什么,编译器都会在执行完你的代码后再在文本框中显示“1”,这种方法麻烦的地方就在于如何才能不让编译器将“1”显示出来