1. 程式人生 > >MFC實現子對話方塊間切換。

MFC實現子對話方塊間切換。

1.新建MFC工程zidlg,新增四個對話方塊資源,分別為它們新建類CChildDlg1,CChildDlg2,CChildDlg3,CChildDlg4。設定每個對話方塊的style為child型。

2.在zidlg標頭檔案中加入四個類的標頭檔案,併為他們新增類的物件 dlg1,dlg2,dlg3,dlg4。

3.在主對話方塊中新增四個button(分別控制每個對話方塊的調出),為它們設定控制變數bt1,bt2,bt3,bt4.

4.在主對話方塊BOOL CzidlgDlg::OnInitDialog()函式中補充程式碼

bt1.EnableWindow(FALSE);
	 //HWND hwnd;
	//hwnd.FindWindow(CChildDlg1,IDD_DIALOG1); 
	 dlg1.Create(dlg1.IDD, this);
    dlg1.SetWindowPos(NULL, -1, 50, 20000,300000, SWP_NOZORDER | SWP_NOACTIVATE);
    dlg1.ShowWindow(SW_SHOW);
	dlg2.Create(dlg2.IDD, this);
    dlg2.SetWindowPos(NULL, -1, 50,  20000,300000, SWP_NOZORDER | SWP_NOACTIVATE);
    dlg2.ShowWindow(SW_HIDE);
	dlg3.Create(dlg3.IDD, this);
    dlg3.SetWindowPos(NULL,-1, 50, 20000,300000, SWP_NOZORDER | SWP_NOACTIVATE);
    dlg3.ShowWindow(SW_HIDE);
	dlg4.Create(dlg4.IDD, this);
    dlg4.SetWindowPos(NULL, -1, 50, 20000,300000, SWP_NOZORDER | SWP_NOACTIVATE);
    dlg4.ShowWindow(SW_HIDE);

5.在button1點選事件中寫入

bt1.EnableWindow(FALSE);
    bt2.EnableWindow(TRUE);
    bt3.EnableWindow(TRUE);
	bt4.EnableWindow(TRUE);
    dlg1.ShowWindow(SW_SHOW);
    dlg2.ShowWindow(SW_HIDE);
   dlg3.ShowWindow(SW_HIDE);
   dlg4.ShowWindow(SW_HIDE);
6.其餘三個按鈕按照自己的意願補充。編譯執行。


相關推薦

MFC實現對話方塊切換

1.新建MFC工程zidlg,新增四個對話方塊資源,分別為它們新建類CChildDlg1,CChildDlg2,CChildDlg3,CChildDlg4。設定每個對話方塊的style為child型。

MFC實現對話方塊對話方塊之間的引數傳遞,例項可測

一、構件工程: 1.新建一個工程CPassParametersDlg,在介面上新增一個Edit(新增變數:m_result),    新增兩個Button其他設定預設,修改Caption分別為:啟動子對話方塊||傳送資料給子視窗 2.在CPassParametersDlg.

MFC對話方塊呼叫主對話方塊的變數和函式

1、在子對話方塊中定義主對話方塊的物件指標: CSensorSysDlg *parent = (CSensorSysDlg*)GetParent();//CSensorSysDlg是主對話方塊對應的類 2、呼叫 //呼叫變數 parent->i;//i是主對話方塊內int型別的

MFC程式中主、對話方塊類之間獲取CSocket類物件出錯問題解析:error C2248: “CSocket::CSocket”: 無法訪問 private 成員(在“CSocket”類中宣告)

(1)錯誤描述:在MFC程式中主對話方塊類利用網路套接字CSocket類和下位機進行通訊;在MFC程式中子對話方塊類想要獲取主對話方塊類的網路套接字變數時,可以通過 CMainDlg* parent;  //指向主對話方塊的指標 獲取到主對話方塊的指標進而獲取到指向套接字

MFC如何新增對話方塊

問題描述  當MFC應用程式的主對話方塊有其他功能需要,但不能顯示在主對話方塊時,通常會通過點選一個功能按鈕彈出一個字對話方塊來實現。最常見的就是登入介面,點選登入按鈕,然後彈出一個登入對話方塊讓你輸入登入資訊,輸完資訊之後點選立即登入按鈕,對話方塊消失,又回到主介面。

MFC對話方塊獲得tab control對話方塊控制元件的值

1.建立兩個對話方塊程式,用來當做Tab Control控制元件的兩個頁。別忘了把Style改為Child,Border改為None。然後就可以在上面加其他控制元件了。 接著分別為這兩個對話方塊建立兩個類,比如CPage1和CPage2。 然後在對話方塊類標頭檔案中,加入這

MFC--父與對話方塊之間的傳值

今天同學讓我搞一個MFC的父對話方塊和子對話方塊的傳值,搞了接近一個小時,真的是發現,很多看起來簡單的東西,當真正要用的時候才發現自己是多麼的眼高手低, 程式設計一定要多寫、、多練!! 1:建立一個M

MFC編個對話方塊,能夠實時顯示攝像頭捕捉的鏡頭, 點選確定,儲存當前影象

現在在vc上採集視訊常用的方法有三:vfw,directshow,opencv  你是要進行影象處理的話推薦opencv(具體參考:於仕琪,opencv教程基礎篇中的例3-6,稍作修改,估計就能用於你的工程)  下面貼出我自己編的一個小工程:如有疑問,E-mail:[email protected

MFC對話方塊初始化問題_從一個“斷言”報警說起

1.問題描述 在進行MFC開發時,希望將介面變得美觀。因而調整了一下對話方塊上的字型與顏色。如果僅有一個對話方塊,那麼直接把這些初始化的程式碼放到OnInitDialog()函式中就好。然而,我們

【遊戲開發】實現簡單對話方塊及音樂播放

//Windows視窗標頭檔案 #include <Windows.h> //PlaySound函式包含的標頭檔案 #pragma comment(lib,"winmm.lib") //主函式 int WINAPI WinMain(HINSTANCE hInstance,HINSTA

MFC模態對話方塊和非模態對話方塊

下面是一個我的手寫的模態對話方塊和非模態對話方塊圖: 模態對話方塊是指當其顯示時,程式會暫停執行,直到關閉這個模態對話方塊後,才能繼續執行程式中其他任務。非模態對話方塊是指當其顯示時,允許轉而執行程式中其他任務,而不用關閉這個對話方塊。      模態對話方塊的建立:

純JS實現Toas對話方塊,無HTML結構

<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title>toast</tit

MFC】基於對話方塊的視窗置底

環境:win10,vs2017 之前發過一篇視窗置底的文章,最近找到了一種新的方法,感覺效果更好一點。 思路就是,將自己程式的父視窗設為桌面,程式就會嵌入到桌面內部,便可實現置頂。 程式碼如下 將置底部分新增到OnInitDialog函式裡面: BOOL CDesktopEv

MFC】基於對話方塊程式選單欄不更新

環境:win10,vs2017 問題描述: 為mfc對話方塊程式添加了一個托盤選單,但這個托盤選單不響應ON_UPDATE_COMMAND_UI訊息, 並且設定選單項的勾選(SetCheck)時,可以通過程式碼觀察到勾選成功,但選單欄顯示的勾選狀態依然不變。 經過幾天的百度,終於發現

MFC——模態對話方塊和非模態對話方塊

一、模態對話方塊 如果你需要做一個模態對話方塊,簡單的說就是你點一個按鈕,彈出一個對話方塊,之後你只能在彈出的對話方塊上操作的這麼一個過程。實驗的過程很簡單,跟著我做吧。 下面開始模態對話方塊實驗 在資源檢視新建一個對話方塊資源,修改其ID為IDD_DIAL

vue3.0實現全域性對話方塊

vue+vuex+vuetify 1.在資料夾components下新建資料夾Dialog.vue <template> <v-layout row justify-cneter> <v-dialog v-model="isSho

從一個MFC工程移植對話方塊類到另一個MFC工程

轉載於:https://blog.csdn.net/wowoandlyn/article/details/2937785         今天碰到模組移植問題了,自己做的對話方塊類(繼承於CDialo

VC/MFC如何設定對話方塊背景顏色

方法一:呼叫CWinApp類的成員函式SetDialogBkColor來實現。  (這個函式已經廢棄) 1 void SetDialogBkColor(COLORREF clrCtlBk = RGB(192, 192

MFC學習之 對話方塊設定背景顏色及控制元件透明的方法

對話方塊設定背景色之後控制元件不透明的問題。 1.對話方塊設定背景色: 方法1:(用OnPaint()) 在Dlg.h中:宣告 afx_msg void OnPaint();                                HICON m_hIcon; 在Dl

CSS 實現三角形對話方塊

<div style=" margin-top: 100px;width: 300px;height: 300px;position: relative;border: 1px solid #000000"> <div style="width:0