对话框
- 格式:pdf
- 大小:290.78 KB
- 文档页数:7
步骤:
1. 把源文件里面的BCGControlSheet.h和.cpp文件添加到自
己的项目中。
2. 然后就是在类APP中的InitInstance的函数中将原来初
始化对话框的代码注释掉,改为加入sheet的那三句话。
3. 为项目添加两个对话框,选择其基类为
CCBCGPPropertyPage。
因为默认选择基类中没有BCG的类(BCG封装MFC),所以手动修改,修改如下:
A. 在头文件中修改基类的名称
class CPage1 : public CBCGPPropertyPage
B. 在源文件中的构造函数上方修改映射类名称
IMPLEMENT_DYNCREATE(CPage1, CBCGPPropertyPage)
C. 在源文件的构造函数中修改类名称
CPage1::CPage1() : CBCGPPropertyPage(CPage1::IDD)
D. 在源文件结尾处修改类名称
BEGIN_MESSAGE_MAP(CPage1, CBCGPPropertyPage)
4. 将源项目的Page1的控件布局复制到自己的项目上来
5. 为控件添加变量和消息响应函数,也可手动添加到
DoDataExchange和map中。
6. 将BCGCBProInc.h文件添加到stdafx.h中
7. 自己添加变量和函数,但是使用源文件的代码
向combo中加入选项的方法有两种
A. 直接着combo的属性菜单中的data一项中写入要添加的选项的
名称,并以分号来间隔
B. OnInitDialog()函数体
button_pic.SetBitmap((HBITMAP)as);
radio_but.SetCheck(1);
m_imagebut.AddString("000"); //其中000为要添加的选项,可以定义为自己想添加的文字
m_imagebut.AddString("111");
m_imagebut.AddString("222");
m_imagebut.SetCurSel(0);
m_imageput1.AddString("333");
m_imageput1.AddString("444");
m_imageput1.AddString("555");
m_imageput1.SetCurSel(2);
m_imagebut2.AddString("666");
m_imagebut2.AddString("777");
m_imagebut2.AddString("888");
m_imagebut2.SetCurSel(0);
m_imagebut3.AddString("999");
m_imagebut3.AddString("1111");
m_imagebut3.AddString("2222");
m_imagebut3.SetCurSel(0);
m_edit.SetSel(0,-1);
m_edit.ReplaceSel("your notes");按钮按下和弹起响应函数
if (!on)
{
button_on.SetWindowText("off");
button_on.SetImage(IDB_BITMAP3);
button_on.SizeToContent ();
button_on.Invalidate ();
on=true;
}
else
{
button_on.SetWindowText("on");
button_on.SetImage(IDB_BITMAP2);
on=false;
}
组合框响应函数(只选一个座位范例)
UpdateData ();
int m;
m=m_imagebut.GetCurSel();
switch (m)
{
case 0:
button_pic.m_bRighImage = FALSE;
button_pic.m_bTopImage = FALSE;
break;
case 1:
button_pic.m_bRighImage = TRUE;
button_pic.m_bTopImage = FALSE;
break;
case 2:
button_pic.m_bRighImage = FALSE;
button_pic.m_bTopImage = TRUE;
break;
}
button_pic.SizeToContent ();
button_pic.Invalidate ();
8. 在Sheet.h和CPP文件中加载位图等资源,首先在Add
resource中import.bmp文件。
修改ID,然后在使用是要使
用对应的ID。
1首先先倒入两个sheet文件,一个为.h,一个为.cpp 文件。
2然后倒入资源,然后给资源改名字,要么改cpp文件也可以。
3然后将所有关于page3-page8的注释掉,因为没有建这几个文件。
4然后就是在类APP中的init……的函数中将原来初始化对话框的代码注释掉,改为加入sheet的那三句话。
5然后再在page1中把控件加好,然后调整布局。
6接着右键点击控件,选add variable来添加变量,有了变量才能给控件添加属性。
7然后右键点击控件选择add event handler,来添加响应控制。
(这些手动添加也可以,定义变量后要在dxdataexchange中添加初始化,然后在map中添加响应控制。
)
8然后在你添加的相应控制连接到的方法中添加响应的具体程序,比如弹出消息啊之类的。
当然,用到图标的还要添加相应的bitcomet resource。
PS:这样基本上就做好了,这里我遇到的问题就是最后一个控件,就是控制图标style的那一项,有个resource不知道怎么添加,就
是IDC_BORDER_LABEL,这个按理说应该是个控件,但是没有找到。
因为他控制的是所有按钮的style。