ldcf.net
当前位置:首页 >> 我用VC创建了一个win32非模态对话框,让对话框失去... >>

我用VC创建了一个win32非模态对话框,让对话框失去...

有点麻烦,焦点在主界面写一个标志字,焦点在非模态框架时清这个标志字。 处理WM_KILLFOCUS这个消息,当标志被清时返回不处理。

你要把你的代码发出来啊

void CMyView::OnShow() { // TODO: Add your command handler code here CDIALOG1 dlg; dlg.Create(IDD_DIALOG1) ; dlg.ShowWindow(SW_SHOW); } 作为非模态对话框,你定义的dlg是一个局部对象,那么执行完dlg.ShowWindow(SW_SHOW);后一到}符号处O...

你要设置一个变量,如果为假,就创建并显示这个对话框,同时将其置为true 这样下次再调用到这里,就不会重复创建了。

析构的时候怎么能调用delete this,那样会崩的,应该是release的时候调用啊

新建一个子对话框。 然后以非模态形式打开就可以了。create->show。

viod dialog1::OnBnclick() { (dialog2*) dlg = new dialog2; dlg->create(IDD_DIALOG2); dlg->ShowWindow(SW_SHOW); this->ShowWindow(SW_HIDE); }

不可以,不过你可以做出来那种效果

问题出在这里: CWnd *hWnd = (CWnd*)GetDlgItem(ID_VIEW);//ID_VIEW为窗口中一STATIC,类型:FRAME 非模态对话框,不能之家这么活得static类型, 因为非模态对话框是从cwnd里面直接继承的, 而不是从cdialog里面继承的

你的非模态对话框的父窗口是什么?将其父窗口设置为NULL试试。

网站首页 | 网站地图
All rights reserved Powered by www.ldcf.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com