2)LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM lParam),
wParam 通常是一个与消息有关的常量值,也可能是窗口或控件的句柄。
lParam 通常是一个指向内存中数据的指针。由于WParam、lParam和Pointer都是32位的,因此,它们之间可以相互转换。
如何改变窗口的 图标?
向窗口发送 WM_SECTION消息。HICON hIcon=AfxGetApp() ->LoadIcon(IDI_ICON);
ASSERT(hIcon);
AfxGetMainWnd() ->SendMessage(WM_SECTION,TRUE,(LPARAM) hIcon);
3)得到hwnd函数:FindWindow(),FindWindowEx()
HWND hwnd=::FindWindow(_T("IEFrame"),NULL);
if(hwnd)
{
HWND hwnd2=::FindWindowEx(hwnd,NULL,_T("WorkerW"),NULL);
HWND hwnd3=::FindWindowEx(hwnd2,NULL,_T("ReBarWindow32"),NULL);
}
4)(CStuDlg*)AfxGetMainWnd() //AfxGetMainWnd() 得到主程序的指针!~~
5)GetDlgItem(IDC_EDIT3) //GetDlgItem()得到控件指针!~~
6)GetDlgItem(IDC_ENGLISH)->SetFocus(); //SetFocus()光标所在区!~~~
7)SetGlgItemText(dlg,IDC_WIDTH,"");设置控件的名称!~~
8)MessageBox(
LPCTSTR lpszText,//消息字符串
LPCTSTR lpszCaption=NULL,//消息框标题
UINT nType=MB_OK //消息框风格
);
9)WritePrivateProfileString("HowTo","bOpenMspaint",this->m_bOpenMspaint? "1":"0",".//Settings.ini");
假设你有一个ini文件 c:/myini.ini
ini文件里:
[setting]
mykey = myvalue
你用程序要实现以上的键值,那么你的WritePrivateProfileString
要这么写:
WritePrivateProfileString("setting","mykey ", "myvalue","c:/myini.ini"
);
你写的函数里,第三个参数是一个选择表达式,根据this->m_bOpenMspaint的真假,选相应的值 "0"或"1"写入。
10)format函数!~
CString strMessage;
strMessage.format (_T ("Window Size (%d, %d)"),
rcWindow.Width (), rcWindow.Height ());
11)GetClientRect()函数
CRect rectClient;//创建一个CRect
GetClientRect(hWnd,rectClient);//得到hWnd所指的窗口的坐标