日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

灰色按键激活小程序

發布時間:2023/12/14 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 灰色按键激活小程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/************************************************************************/ /* 灰色按鍵激活參考API:SetWindowPos GetForegroundWindow EnumChildWindows2011/2/23 bysdy915------------------------------------------------------------------------- */ /************************************************************************/ #include <windows.h> #include <Strsafe.h> #include "resource.h" HINSTANCE g_hInstance; HANDLE g_hEvent;LRESULT CALLBACK DlgProc(HWND,UINT,WPARAM,LPARAM); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow ) { g_hInstance = hInstance; DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_DIALOG1),NULL,(DLGPROC)DlgProc,0); return 0; } //EnumChildWindows函數的回調函數 BOOLCALLBACK EnumChildProc(HWNDhwndChild, LPARAMlParam) {if(!IsWindowEnabled(hwndChild)){EnableWindow(hwndChild,TRUE);returnTRUE;} }//激活功能執行線程 void_ActiveGbutton(HWNDhwnd) {HWNDhFirstWindow=NULL,hTemp=NULL;charcbuff[100]={0};while(1){WaitForSingleObject(g_hEvent,INFINITE);hTemp = GetForegroundWindow();//相同窗口已經激活if(hTemp==hwnd||hFirstWindow==hTemp||hTemp==NULL){Sleep(50);continue;}hFirstWindow = hTemp;//sprintf(cbuff,"handle = %d",hFirstWindow);//MessageBoxA(NULL,cbuff,NULL,MB_OK);//枚舉子窗口EnumChildWindows(hFirstWindow,(WNDENUMPROC)EnumChildProc, NULL);}return; }LRESULT CALLBACK DlgProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam) { HICON hIcon; staticintbActive=FALSE;switch(uMsg) { case WM_INITDIALOG: //hIcon = LoadIcon(g_hInstance,MAKEINTRESOURCE(MYICON)); //SetClassLong(hwnd,GCL_HICON,(long)hIcon); //對話框置頂SetWindowPos(hwnd,HWND_TOPMOST,0,0,0,0,SWP_SHOWWINDOW|SWP_NOSIZE|SWP_NOMOVE);g_hEvent = CreateEventA(NULL,TRUE,FALSE,NULL);//建立激活線程CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_ActiveGbutton,hwnd,0,NULL);break; case WM_COMMAND: { switch(wParam) { case IDOK: //開始執行灰化按鈕的激活//改變按鍵顯示SetDlgItemTextA(hwnd,IDOK,bActive==FALSE?"Stop":"Start");bActive=!bActive;if(bActive==TRUE)SetEvent(g_hEvent);elseResetEvent(g_hEvent);break;case IDCANCEL: EndDialog(hwnd,1); break; } } break; } return false; }

總結

以上是生活随笔為你收集整理的灰色按键激活小程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。