如何生成有属性页的非模态对话框?
domodal生成的模态对话框上有四个按钮,我不想要,所以想用非模态的对话框CMysheet mys(_T("111"));//CMysheet是CPropertySheet的子类
mys.DoModal();
能见到模态对话框
但是
CMysheet mys(_T("111"));
mys.Create();
mys.ShowWindow(SW_SHOW);
为何只能看到含属性页的对话框的影子?
看vc里建无属性页的非模态对话框,得用new,否则连影子都看不到
可是CPropertySheet跟CDialog的格式好像不一样——不让用new 有一个办法可以做到:不要使用CPropertySheet,你还是创建Dialog资源,然后创建几个child式样的对话框,这些对话框用CPropertyPage作为基类,在Dialog中Create这些CPropertyPage,反正用Dialog作为这些CPropertyPage的Parent,所以你想怎么控制都可以了。我都是这么做的。 AddPage还需要重新加载? 都不用CPropertySheet了,和AddPage无任何关系!你下载http://www.10house.net/xqg.asp里面的程序安装看看,连安装程序都是用上面讲的方法做的 不是吧?你的网站???厉害啊!
若是,将来我找不到工作,就去投奔你啊!
我还会干点线切割操作的
没办法
如今学测量的女生很不好找工作的(性别歧视)
呵呵!kiding http://www.10house.net/xqg.asp里面的程序安装看看,连安装程序都是用上面讲的方法做的
晕,在论坛上转了半天,也没看见什么下载的地方!!!
不过,支持线切割什么cy...软件
记不清了,sorry (1) Create后就会显示
(2)看不到东西可能是没有社visible=true 和disable=false (对所有page都要设)
(3)如果你的程序在AutoCAD中运行,要额外做几件事:
(A)处理AutoCAD发过来的消息WM_ACAD_KEEPFOCUS
(B)将AUtoCAD的主窗口指给propertysheet 做父窗口. CYoume *mys=new CYoume(_T("aa"));
mys->Create();
mys->ShowWindow(SW_SHOW);
这样new就ok了 注;无模式对话不是同步的,创建函数调用后立即返回,
void CMainFrame::OnMyDialog ( )
{
//建立一个非模式对话框。
CSampleDilog * pDialog =new CMyDialog;
ASSERT_VALID (pDialog) Destroy();
BOOL bResult = pDialog —>Creste (IDD_IDALOG);
ASSERT (bResult );
}
页:
[1]