Win32 GetWindowLong函数实例Demo
生活随笔
收集整理的這篇文章主要介紹了
Win32 GetWindowLong函数实例Demo
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
獲取和輸出代碼;
hdc=GetDC(hwnd);ret=GetWindowLong(hwnd,GWL_STYLE);wsprintf(szBuffer, "窗口樣式:%d",ret);TextOut(hdc,100,50,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(hwnd,GWL_EXSTYLE);wsprintf(szBuffer, "擴展窗口樣式:%d",ret);TextOut(hdc,100,70,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(hwnd,GWL_HINSTANCE);wsprintf(szBuffer, "實例句柄:0x%x",ret);TextOut(hdc,100,90,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(hwnd,GWL_HWNDPARENT);wsprintf(szBuffer, "所有者窗口句柄:0x%x",ret);TextOut(hdc,100,110,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(hwnd,GWL_ID);wsprintf(szBuffer, "窗口ID:%d",ret);TextOut(hdc,100,130,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(hwnd,GWL_USERDATA);wsprintf(szBuffer, "用戶設置的32位數據:%d",ret);TextOut(hdc,100,150,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(hwnd,GWL_WNDPROC);wsprintf(szBuffer, "窗口過程地址:0x%x",ret);TextOut(hdc,100,170,szBuffer,lstrlen(szBuffer));//ret=GetWindowLong(edit1,GWL_STYLE);獲取不到 ret=GetWindowLong(GetDlgItem(hwnd,8),GWL_STYLE);wsprintf(szBuffer, "文本框風格:%d",ret);TextOut(hdc,100,190,szBuffer,lstrlen(szBuffer));ret=GetWindowLong(GetDlgItem(hwnd,8),GWL_ID);wsprintf(szBuffer, "文本框窗口ID:%d",ret);TextOut(hdc,100,210,szBuffer,lstrlen(szBuffer)); ret=GetWindowLong(GetDlgItem(hwnd,8),GWL_STYLE); if(ret & ES_PASSWORD){//MessageBox(NULL,"這是一個密碼域",TEXT("獲取文本框風格"),0);TextOut(hdc,100,230,"這是一個密碼域",14);}文本框創建代碼;
edit1 = CreateWindow(TEXT("Edit"), TEXT("mima123456"), ES_PASSWORD|WS_CHILD|WS_VISIBLE|ES_LEFT|WS_BORDER|WS_EX_CLIENTEDGE , 20, 20, 130, 20, hwnd, (HMENU)8, hInst, NULL);工程和其他代碼類似此;
https://blog.csdn.net/bcbobo21cn/article/details/106340762
在WM_CREATE消息里創建文本框;增加ES_PASSWORD風格,用戶鍵入到字符將不可見;
GetWindowLong,第一個參數是要獲取的窗口句柄,第二個參數是要獲取的類別,返回值是獲取結果;
程序獲取本窗口的相關信息,創建的文本框的相關信息;
總結
以上是生活随笔為你收集整理的Win32 GetWindowLong函数实例Demo的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Win32 C 语言程序编译多个文件和在
- 下一篇: 超图桌面版根据现有数据源制作一幅地图简单