WM_KEYDOWN如何用不了.小弟我快晕了
WM_KEYDOWN怎么用不了...我快晕了
int _tmain(int argc, _TCHAR* argv[]){
LPTSTR cln = _T( "notepad ");
HWND wnd;
wnd=::FindWindow(cln,NULL);
if(wnd){
PostMessage(wnd,WM_KEYDOWN,VK_HOME,0x01470001);
}
return 0;
}
刚学VC.想不到第1步就那么难.
我想在记事本中模拟一下HOME键..
在网上找了关于WM_KEYDOWN的例子..自己试做都不行..
还有那个0x01470001是什么来的??
------解决方案--------------------
没事慢慢来。。
HWND wnd1,wnd2;
wnd1=FindWindow(( "Notepad "),NULL);
wnd2=FindWindowEx(wnd1,NULL, "Edit ",NULL);
//::SendMessage(wnd1,WM_SYSCOMMAND,SC_CLOSE,0);//关闭记事本
//::SendMessage(wnd2,WM_CHAR, 'a ',0) ; //输入a
::SendMessage(wnd2,WM_KEYDOWN,VK_HOME,0);//实现回行
由于记事本是多窗口程序,写字的是只是它主窗口下的一个窗口,所以这样。
建议:
如果你是初学VC,找本书慢慢学,先理解了窗口代码,sdk和mfc的基本写法都要注意。
象这样的程序暂时不要去管,慢慢来。
不然容易郁闷,而什么都学不到,学不好,离了书什么都不知道了。
int _tmain(int argc, _TCHAR* argv[]){
LPTSTR cln = _T( "notepad ");
HWND wnd;
wnd=::FindWindow(cln,NULL);
if(wnd){
PostMessage(wnd,WM_KEYDOWN,VK_HOME,0x01470001);
}
return 0;
}
刚学VC.想不到第1步就那么难.
我想在记事本中模拟一下HOME键..
在网上找了关于WM_KEYDOWN的例子..自己试做都不行..
还有那个0x01470001是什么来的??
------解决方案--------------------
没事慢慢来。。
HWND wnd1,wnd2;
wnd1=FindWindow(( "Notepad "),NULL);
wnd2=FindWindowEx(wnd1,NULL, "Edit ",NULL);
//::SendMessage(wnd1,WM_SYSCOMMAND,SC_CLOSE,0);//关闭记事本
//::SendMessage(wnd2,WM_CHAR, 'a ',0) ; //输入a
::SendMessage(wnd2,WM_KEYDOWN,VK_HOME,0);//实现回行
由于记事本是多窗口程序,写字的是只是它主窗口下的一个窗口,所以这样。
建议:
如果你是初学VC,找本书慢慢学,先理解了窗口代码,sdk和mfc的基本写法都要注意。
象这样的程序暂时不要去管,慢慢来。
不然容易郁闷,而什么都学不到,学不好,离了书什么都不知道了。