逃跑按鈕的實現

2021-05-23 13:42:59 字數 567 閱讀 1386

首先要捕獲滑鼠移動訊息,那有哪個類來捕獲訊息呢?如果是對話方塊來捕獲的話,我們只要在對話方塊上移動,就會上下移動,不符合,所以滑鼠移動訊息應該有按鈕視窗來捕獲,可以建立乙個從cbutton類派生的新類,然後將按鈕控制項與這種新型別的成員變數相關聯,從而就把按鈕控制項與乙個自定義的按鈕視窗關聯起來。(新資源新類),當移動到按鈕上的時候,呼叫函式showwindow(sw_hide),同時要讓另乙個按鈕顯示出來,就要知道這個按鈕的位址,然後呼叫showwindow,為了獲得這個位址,可以在cnewbutton中定義乙個cnewbutton *型別的成員變數,然後當用cnewbutton類去例項化ctestdlg類的成員變數時,這兩個物件內部就有了乙個cnewbutton *成員變數,我們可以讓這兩個成員變數互相交換自己的首位址。這個過程可以放在函式oninitdialog中完成,因為該函式是相應wm_initdialog訊息的響應函式,該訊息是在對話方塊要顯示之前傳送的。然後再onmousemove中寫碼:

showwindow(sw_hide);m_pbtn->showwindow(sw_hide)

解釋:記住傳遞的都是this指標,就是當前指向的物件(沒用呼叫什麼的,如m_pbtn)。

MFC學習 「逃跑」按鈕的實現

如何設計對話方塊程式上的 逃跑 按鈕,即每當滑鼠移動到btn上面的時候就會自動跑到另外乙個地方,看上去滑鼠好像永遠無法點中?討巧 設定滑鼠wm mousemove的響應函式用於捕獲滑鼠移動操作,每當滑鼠移動到btn上就修改屬性隱藏,同時修改另乙個btn的屬性為顯示,造成btn自動 逃跑 的假象。步驟...

SetWindowPos 逃跑按鈕

孫鑫老師在講 vc的過程中,曾實現 逃跑按鈕的效果 主要思想是,在基於對話方塊的工程中,可以通過新建乙個類 cnewbtn1 名字可以任意命名 讓該類繼承 cbutton 類,然後在對話方塊類中針對目標按鈕新建乙個成員變數 m btn1 通過選擇成員變數的型別為新建的繼承於 cbutton 類cne...

VC2005逃跑按鈕實現

1.新建乙個基於對話方塊的mfc應用程式。刪除對話方塊中的預設按鈕。拖過來兩個按鈕。2.新建乙個類,繼承cbutton vc6是使用類嚮導。vc8是開啟類檢視,右擊新增類。3.為兩個按鈕關聯變數 開啟類檢視,右擊 newbtn 類,開啟屬性面板,可以為 newbtn 類新增訊息響應函式。直接在 中為...