1樓:匿名使用者
當然不可以,你沒法獲得對方的成員;
你要獲得它執行的例項物件;
2個程序的通訊,麻煩點;
但是你可以通過hwnd h=findwindow(“ ”,視窗名字);來獲取控制代碼
cwnd*w=cwnd::fromhandler(h);
然後就可以做了
例如第2個對話方塊的成員為 int a=0;
給他夠找一個方法
int geta()
void seta(int a)
那麼在對話方塊1對用
int a=w->geta();a=a+1;
w->seta(a);
2樓:匿名使用者
申明a為b的成員函式不就可以訪問a裡面的變數了。。
如果要相互訪問,那麼設定為指標成員。
還有一種方法就是間接的方法。再定義一個類c。ab操作c中的變數。
3樓:匿名使用者
如果是同級的視窗a跟b,在b類中宣告一個a的成員,然後就能在b類中通過成員來訪問a類中的變數了。記得要在b類中新增a類的標頭檔案,另外兩個類是兩個對話方塊類。如果是一個父視窗一個子視窗,子視窗信引用父視窗中的變數,需要用getparent()
mfc中如何在一個對話方塊中呼叫另外一個對話方塊的函式
4樓:幸巴達
你可以把主對話方塊類的指標傳給新對話方塊.
通過這個指標呼叫主對話方塊的東西.
假設主對話方塊為cmaindlg,新對話方塊為cchilddlg;
// cchilddlg 呼叫主對話方塊的doother函式;
// 當然非模態對話方塊等其他任何對話方塊也可以這樣做.
class cmaindlg
void doother(){}
};class cchilddlg
cchilddlg():m_pmain(null){}};
5樓:走出憧憬
沒個對話方塊就是一個類啊 你在這個對話方塊類裡面定義一個主對話方塊的物件,然後就可以用該物件呼叫主對話方塊的函式了。
6樓:匿名使用者
postmessage是win32裡常用的做法,可以將所需要的所有資料(包括函式地址)封裝到一個struct的結構裡.
"走出憧憬"的做法不可行,這種方法無法獲得主視窗的執行環境,也就是無法使用在主視窗裡已經使用的一些變數的數值.
最簡單的還是"魔高丈"的做法了.只要這兩個視窗具有父子關係.
7樓:匿名使用者
使用全域性變數,再用extern外部宣告他們
8樓:匿名使用者
postmessage
9樓:魔高丈
cmasterdlg *pparent = (cmasterdlg *)getparent();
怎麼初始化mfc中子對話方塊中的listcontrl控制元件翱
比如控制元件變數為c list,初始化 如下 c list.modifystyle 0,lvs report c list.setextendedstyle lvs ex gridlines lvs ex fullrowselect 以上是樣式初始化 c list.insertcolumn 1,t ...
開機畫面的對話方塊,電腦開機出現對話方塊
開始 設定 控制面板 在分類檢視中 使用者帳戶 更改使用者登入或登出方式 使用歡印螢幕鉤選,重啟,可切換為xp經典啟動。取消密碼,同樣,開始 設定 控制面板 在分類檢視中 使用者帳戶 選啟動的管理員並帶密碼保護的那個圖示 刪除我的密碼即可。開啟控制面板裡的使用者帳戶,把能刪除的使用者全部刪除就好了,...
如何使用javascript彈出對話方塊
1 彈出普通對話方塊使用alert函式,例如 alert hello world 2 彈出確認對話方塊使用confirm函式,例如var result confirm 確定退出麼?3 使用彈出模態網頁窗體。4 使用vreturnvalue window.showmodelessdialog surl...