MFC UI按鈕多執行緒

2022-03-28 11:14:12 字數 760 閱讀 2811

單執行緒操作ui會使視窗假死,所以ui操作需要用到多執行緒

實現效果:當點選kiss時按鈕閃動3次

原理:自定義乙個訊息(wm_change_button),當點選按鈕"kiss"時,啟動乙個新的執行緒,執行緒每隔0.5s鐘傳送一次wm_change_button訊息。程式監聽到該訊息時呼叫訊息函式,改變按鈕大小。

1、在介面上新增乙個按鈕修改id為

idc_kiss 

2、ctrl+shift+x,建立類嚮導中的訊息機制

3、定義事件函式

#define wm_change_button wm_user+1

#define sleep_times 200

void

change(lpvoid pparam)

4、定義按鈕事件

afx_msg lresult cmfcthreadbuttontest1dlg::onchangebutton(wparam wparam, lparam lparam)

else

//movewindow不僅僅是「移動」他還可以改變視窗大小

pbtn->movewindow(&rect);

return0;

}void

cmfcthreadbuttontest1dlg::onbnclickedkiss()

參考**

多執行緒 多執行緒原理

我們首先要知道什麼是多執行緒,說白了就是多個執行緒,執行緒是什麼呢,其實就是程序執行的途徑,那麼說道這裡我們又引入了乙個新的名字,就是程序,那麼我們來看看什麼是程序,其實我們自己也能看到,啟動電腦的任務管理器,我們就可以看到程序選項,裡面是我們電腦所有的程序,我們會發現有很多的程序.簡單地說就是程序...

多執行緒(一) tomcat 多執行緒

web server允許的最大執行緒連線數還受制於作業系統的核心引數設定,通常windows是2000個左右,linux是1000個左右。1.編輯tomcat安裝目錄下的conf目錄下的server.xml檔案 maxthreads 150 表示最多同時處理150個連線,tomcat使用執行緒來處理...

多執行緒 理解多執行緒(一)

程序 程序是cpu分配資源的基本單位 執行緒 執行緒是cpu排程的基本單位 資源分配給程序,所有執行緒共享該程序的資源 當執行緒數大於cpu的數量,會出現時間片的輪詢。cpu時間片是直接分配給執行緒的,執行緒拿到cpu時間片就能執行了 cpu時間片不是先分給程序然後再由程序分給程序下的執行緒的。所有...