如题,哪位大虾知道的,帮忙解决一下啊,急啊,在线等
解决方案 »
- 基于B/S的考试系统的问题
- 关于SQL语句的问题
- 100分,毕业设计做好了,请下载,多提意见有分`~
- 怎样在一个窗体中打开另一个窗体,另一个窗体贴在这个窗体上,MDI除外
- 动态创建表,为什么第一次可以,第二次老是出错?(关闭窗口在打开)
- 急求:FindNextPrinterChangeNotification的例子,
- 请问通过句柄如何得到控件的地址
- 用DELPHI的什么函数能得到两个日期之间年数(用于取人员的年龄)?
- 如何在dbgrid控件中实现全部选中后,按某一个键(Ctrl),可取消已选中的个别行,实现除个别未选以外,都选中。我已问了很久,请各位帮忙!!!
- 用TNMPOP3接收的中文邮件是乱码,怎么正确显示?
- dbgrideh的应用问题。
- VISTA 64 下虚拟modem的问题
具体请查相关文档
消息 3,0
var
vHdl:HWND;
vMenu,vSubMu1,vSubMu2:HMENU;
begin
vHdl := FindWindows(nil,pchar('记事本'));
if vHdl<>0 then
begin
vMenu := GetMenu(vHdl);
if vMenu<>0 then
begin
vSubMu1 := GetSubMenu(vMenu,0);//得到记事本的“文件”菜单项;
vSubMu2 := GetSubMenu(vSubMu1,2);//获取“文件”菜单下的“保存”菜单项的句柄(不知道是不是这样的)
SendMessage(vhdl,WM_COMMAND,vSubMu2,0);
end;
end;
end;
我试过了,这样可以的
var
vHdl:HWND;
begin
vHdl := FindWindow('Notepad',nil); sendmessage(vHdl,wm_command,3,0 );
end;
感谢你的帮助,我试了你写的代码,笔事本不会弹出保存对话框啊(“保存”菜单项没有触发到吧)
谢谢,可以触发到。能不能跟我说下SendMessage最后两个参数的含义。为什么不是写成SendMessage(vhdl,WM_COMMAND,0,3),而是SendMessage(vhdl,WM_COMMAND,3,0); 我下午另外一个30分的贴,请你进来领取。
能不能再问一个问题,就是如何判断外部程序的某个子菜单是否处于灰色状态(不可点击)呢?
我另开了一个30分的贴子,等你来领了。