通常,滑鼠拖動對話方塊的區域是標題欄,本例中可以在對話方塊的任何區域進行拖動。
(1)新建乙個基於對話方塊的mfc應用程式dragtest,刪除對話方塊中原有控制項。
(2)開啟類cdragtestdlg的屬性檢視,切換到訊息頁,找到wm_nchittest訊息後新增訊息函式onnchittest,如圖所示:
(3)在onnchittest中,修改**如下:
lresult cdragtestdlg::
onnchittest
(cpoint point)
(4)儲存編譯執行,執行結果如圖:
在對話方塊非標題欄區域可以實現隨意拖動的效果。
無標題欄對話方塊的拖動
實際上,用滑鼠點住對話方塊背景進行拖動操作並不難,但是你必須了解在標題欄裡拖動視窗的原理。windows首先確定滑鼠點中了那個視窗,然後向那個視窗傳送乙個wm nchittest訊息找出此視窗的哪個 非客戶區 如邊界 最大化 最小化按鈕 選單 標題等等 擁有滑鼠游標。接著預設的視窗過程響應訊息並返回...
自繪對話方塊標題欄
本例中將涉及到對話方塊標題欄的自繪,雙緩衝點陣圖的顯示以及位圖按鈕類的使用。1.標題欄自繪 2.雙緩衝顯示位圖 雙緩衝顯示點陣圖的原理網上介紹的比較多,主要思路如下 本例中的ctestbitmapshowdlg主測試類中位圖的顯示,以及ccolortitledlg標題欄重繪類中標題欄的貼圖操作都是使...
WPF 標題欄 右鍵視窗標題新增關於對話方塊
原文 wpf 標題欄 右鍵視窗標題新增關於對話方塊 wpf標題欄 右鍵選單 中新增新項 public partial class mainwindow window region 給wpf標題欄的右鍵選單欄 新增 關於 選單項 private void mainwindow sourceinitia...