回复
参见:<A href="dispbbs.asp?boardID=14&ID=22734&star=1&page=1" target="_blank" >dispbbs.asp?boardID=14&ID=22734&star=1&page=1</A>
文件最多158KB,所以不要包含编译过程产生的文件,只发源文件. Dwgbox.rar
回复
啊呀,你这样发上来和以前的没什么区别,什么dsw, *.rc文件都没有,别人没法用你的程序,更没法调试了. 本帖最后由 作者 于 2005-4-24 10:21:21 编辑
哪再发一次
res文件夹也有用的 狂汗哪..
***<BR>BOOL startDlg();<BR> startDlg();<BR>}
<BR> if(m_fTKwidth!=0.0 && m_fTKhight!=0.0 && m_fTKscale!=0.0 )//此处变量无法从DwgboxDlg.cpp中定义的对话框变量传递数据.<BR>***
...DwgBoxCommand.cpp从头到尾也没有建立一个真正的对话框实体, startDlg虽然建立了一个对话框, 但是对话框的scope只是startDlg函数本身, 一出startDlg, 对话框就被消灭了..然后在另外一个叫tk的函数里面对话框的参数被读取, 但是完全没有对话框实体..当然是不可能认识你对话框里的变量的..
你需要定义全局使用的不是函数, 而是对话框..
隶属于一个类的变量在使用其类的程序里是这样读取的...:在需要使用类的函数里建立对话框类变量, 然后通过对话框变量名获得对话框类里的变量..
CDwgBoxDlg dlg;<BR>// 此处省略对话框初始化. <BR>dlg.m_fKTwidth = ...;
楼主的程序其实看起来更像C而不是C++, 应该再去熟悉一下OOP.. 另: 传递OK消息也是一样的道理. 所有和对话框内部的东西有关的操作, 都必须基于一个对话框object进行..(所谓object oriented programming是也..) 也就是说, 是需要使用对话框的主程序(在楼主的程序里是tk)操作一个CDwgBoxDlg变量并取得用户的输入(包括用户按OK或者CANCEL按钮), 而不是从CDwgBoxDlg里面操作tk.. 非常感谢您的指点. ok按钮消息返回值是什么?是1吗。