读书人

用了消息循环但主窗体的菜单快捷键不

发布时间: 2013-01-25 15:55:29 作者: rapoo

用了消息循环,但主窗体的菜单快捷键不起作用。如:F4、Ctrl+D等
我用了消息循环,但主窗体(TfrmMain)的菜单快捷键不起作用。如:F4、Ctrl+D等,窗体上TAB键又能移动控件焦点,请高手帮忙解决,谢谢!

下面是项目文件的代码:

program Main;

uses
Forms,
Windows,
UfrmMain in 'UfrmMain.pas' {frmMain};

var
FMsg: TMSG;
FMain: TfrmMain;

{$R *.res}

begin
{
Application.Initialize;
Application.CreateForm(TfrmMain, frmMain);
Application.Run;
}

fmain:=tfrmmain.Create(application);
fmain.show;
while GetMessage(FMsg, 0, 0, 0) do begin
TranslateMessage(FMsg);
DispatchMessage(FMsg);
end;

end.
[解决办法]
曾经记得光有消息循环还不够,好像还要注册快捷键。我很久以前用汇编写过一个窗体。。
[解决办法]
RegisterHotKey(m_hWnd, ID_F4, 0, VK_F4);
RegisterHotKey(m_hWnd, ID_CTRL_D, MOD_CONTROL, 68); 'ctrl+D'

procedure WMHOTKEY(var AMsg: TMessage);message WM_HOTKEY;
var
Pt: TPoint;
begin
if AMsg.wParam = ID_F4 then
begin

end
else if AMsg.wParam = ID_CTRL_D then
begin

end;
end;
[解决办法]
嗯,好像是这样。。

读书人网 >.NET

热点推荐