支持对话框控件
来源:互联网 发布:花生壳赠送的免费域名 编辑:程序博客网 时间:2024/06/05 08:49
对Pen对话框来说,要把选中的线宽存储在CPenDialog类的数据成员m_PenWidth中。
可以通过右击CPenDialog类名,并从上下文菜单中选择适当菜单项的方法添加该数据成员,也可以直接把他添加到类定义。
class CPenDialog:public CDialog
{
//construction
public:
CPenDialog(CWnd* pParent=NULL);//standard constructor
//Dialog Data
public:
int m_PenWidth;//Record the pen width
//Plus the rest of the class definition...
};
使用m_PenWidth数据成员把对应于文档中当前线宽的单选按钮设置为选中状态,还要把对话框中的线宽存储在该成员中,以便在对话框关闭时也可以获取用户的选择。
以便在对话框关闭时也可以获取用户的选择。此刻,可以在类的构造函数中把m_PenWidth初始化为0.
1.初始化控件
可以通过重写在基类CDialog中定义的OnInitDialog()函数来初始化按钮。OnInitDialog()函数是在响应WM_INITDIALOG消息时被调用的,该消息是在执行DoModal()的过中,正好在显示对话框之前发送的。
2.处理按钮消息
可以给CPenDialog类添加BN_CLICKED消息的处理程序。
void CPenDialog::OnPenwidth0()
{
m_PenWidth=0;
}
3.完成对话框的操作
必须修改CSketcherDoc类中的OnPenwidth()处理程序,才能使对话框有效。
//handler for the pen width menu item
void CSketcherDoc::OnPenwidth()
{
CPenDialog aDlg;
//set the pen width in the dialog to that stored in the document
aDlg.m_PenWidth=m_PenWidth;
//DIsplay the dialog as modal
//when closed with OK,get the pen width
if(aDlg.DoModal()==IDOK)
m_PenWidth=aDlg.m_PenWidth;
}
首先把在文档的m_PenWidth成员中存储的线宽传递给aDlg对象的m_PenWidth成员;还需要给CSketcherDoc类添加m_PenWidth成员。
注意:即使用DoModal()函数返回某个值时对话框关闭,aDlg对象也仍然存在,因此可以放心地调用该对象的成员函数。aDlg对象是在从OnPenwidth()函数返回时自动销毁。
- 支持对话框控件
- 对话框控件+
- VC 对话框支持拖动
- 弹出下拉编辑控件,跟踪输入内容自动过滤查询,过滤条件完全自定义,支持TextBox,支持DataGridView(弹出查询对话框),支持DevExpress 8.2的TextEdit,Gridview
- 可适配控件对话框
- 对话框和常用控件
- 共用对话框控件
- Android 控件之对话框
- Android 控件(注册对话框)
- 对话框和常用控件
- VC++对话框(控件)
- 对话框及常用控件
- [控件]AlertDialog对话框
- [控件]ProgressDialog对话框进度条
- 自定义对话框绑定控件
- MFC对话框和控件
- 对话框动态生成控件
- 控件自适应对话框大小
- select 左右多选实现
- WinDbg调试dump文件
- Axis2 Web Service(三)
- IIS,什么东东
- 分布式搜索Elasticsearch——创建客户端(四)
- 支持对话框控件
- 未能加载文件或程序集“App_Web_ckqi_ppf, Version=0.0.0.0, Culture=neutral...
- ACM大牛blog
- python读文件open file 中文乱码问题
- 网页采集资料---有防采集的解决方法
- 【转】IOS隐藏键盘
- 添加微信tabbar中有消息的小红点
- delete this--对象请求自杀
- MinStack