几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   ObjectARX(C++) (http://www.dimcax.com/hust/forumdisplay.php?f=34)
-   -   【转帖】如何在dockcontrolbar上面显示一个自定义的对话框 (http://www.dimcax.com/hust/showthread.php?t=7361)

yang686526 2009-04-16 11:08 PM

【转帖】如何在dockcontrolbar上面显示一个自定义的对话框
 
如何在dockcontrolbar上面显示一个自定义的对话框
如何在dockcontrolbar上面显示一个自定义的对话框
我使用dockcontrolbar建立了一个停靠的工具栏
void test()
{
#ifdef oarxwizdebug
acutprintf ("\noarxwizdebug - test() called.");
#endif // oarxwizdebug
// todo: implement the command
hwnd hwnd = adsw_acadmainwnd();
if(!pdialog.create(cwnd::fromhandle(hwnd),"test"))

{

trace0("failed to create toolbar\n");
}
crect rect (0, 0, 250,
用caduipaletteset。从它继承一下,然后里面放palette,palette里放dialog。dialog最好也从cad的aduidialog继承。看一下例子怎么用吧,这是一个实现类似功能的套路。
pdialog1为cdialog类
pdialog 为caduidockcontrolbar类
修改了一下代码问题终于解决了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
extern cerrorlist pdialog1;
extern cmodelessdlg pdialog;
void test()
{
#ifdef oarxwizdebug
acutprintf ("\noarxwizdebug - test() called.");
#endif // oarxwizdebug
// todo: implement the command
hwnd hwnd = adsw_acadmainwnd();
if(!pdialog.create(cwnd::fromhandle(hwnd),"errors"))
{
trace0("failed to create toolbar\n");
}
pdialog1.create (idd_dialog1, &pdialog);
pdialog1.centerwindow(&pdialog);
pdialog1.showwindow(sw_show);

crect rect (0, 0, 250,


所有的时间均为北京时间。 现在的时间是 08:53 AM.