现在为了便于复用,想把这个项目改成一个ActiveX控件,在其他项目中使用。使用时点击一个按钮或快捷键就弹出那个主窗口。
要求改成控件后:使用这个控件时,只在使用它的表单中显示一个小图标(就像在C++Builder中的Form中加入一个OpenDialog似的),运行这个使用它的项目时也不显示出来,当有特定的操作时才调用控件中的主窗口。
不知道说清楚了没有。其实与VC中的CFileDialog对话框有些类似。
对了,这个控件主要用于桌面应用系统,不需要在网上运行。
刚入门,很多都不懂。希望大虾们不要笑我。
请指教个实现方法。最好有个例子。多谢了。
5 个解决方案
#1
参考:
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5561/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2649/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5517/
最好的是:
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2615/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5561/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2649/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5517/
最好的是:
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2615/
#2
我比较笨。谁有没有例子啊。或是详细一点的介绍。
#3
新建一个基于MFC Activex控件,将你原有程序的主窗口属性改成child.
在CMyCtrl的OnCreate方法中创建你的主窗口即可,注意在OnClose时注意销毁你create的窗口。
为了你的窗口代替控件的整个客户区在CMyCtrl的OnDraw方法中调用m_pDlg->MoveWindow(rcBounds, TRUE);要设置控件的初始大小用父类的SetControlSize(150,10);
其他操作跟MFC 对话框程序没任何区别了。
在CMyCtrl的OnCreate方法中创建你的主窗口即可,注意在OnClose时注意销毁你create的窗口。
为了你的窗口代替控件的整个客户区在CMyCtrl的OnDraw方法中调用m_pDlg->MoveWindow(rcBounds, TRUE);要设置控件的初始大小用父类的SetControlSize(150,10);
其他操作跟MFC 对话框程序没任何区别了。
#4
漏了点,主窗口别忘了属性钩选control属性。
#5
好.
#1
参考:
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5561/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2649/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5517/
最好的是:
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2615/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5561/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2649/
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c5517/
最好的是:
http://www.codeguru.com/Cpp/COM-Tech/activex/controls/article.php/c2615/
#2
我比较笨。谁有没有例子啊。或是详细一点的介绍。
#3
新建一个基于MFC Activex控件,将你原有程序的主窗口属性改成child.
在CMyCtrl的OnCreate方法中创建你的主窗口即可,注意在OnClose时注意销毁你create的窗口。
为了你的窗口代替控件的整个客户区在CMyCtrl的OnDraw方法中调用m_pDlg->MoveWindow(rcBounds, TRUE);要设置控件的初始大小用父类的SetControlSize(150,10);
其他操作跟MFC 对话框程序没任何区别了。
在CMyCtrl的OnCreate方法中创建你的主窗口即可,注意在OnClose时注意销毁你create的窗口。
为了你的窗口代替控件的整个客户区在CMyCtrl的OnDraw方法中调用m_pDlg->MoveWindow(rcBounds, TRUE);要设置控件的初始大小用父类的SetControlSize(150,10);
其他操作跟MFC 对话框程序没任何区别了。
#4
漏了点,主窗口别忘了属性钩选control属性。
#5
好.