社区
ATL
帖子详情
mfc ActiveX控件中, 怎么把一个Property page上一个控件和属性关联上呀?
whatyayaya
2004-04-16 03:24:39
我用vs 2003
...全文
119
8
打赏
收藏
mfc ActiveX控件中, 怎么把一个Property page上一个控件和属性关联上呀?
我用vs 2003
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
aspnetwuxueyou
2004-09-23
打赏
举报
回复
mark
yaoyuhang
2004-04-29
打赏
举报
回复
标记
wangweixing2000
2004-04-16
打赏
举报
回复
实现默认属性页
如果使用“ActiveX 控件向导”创建控件项目,则“ActiveX 控件向导”会为从 COlePropertyPage 派生的控件提供一个默认的属性页类。最初,该属性页是空白的,但可以将任何对话框控件或控件集添加到其中。由于“ActiveX 控件向导”在默认情况下只创建一个属性页类,必须使用“类视图”创建其他属性页类(也从 COlePropertyPage 派生)。有关此过程的更多信息,请参见 MFC ActiveX 控件:添加其他自定义属性页。
实现属性页(本例中为默认属性页)的过程分三步:
实现属性页
将 COlePropertyPage 派生的类添加到控件项目。如果项目是用“ActiveX 控件向导”创建的(如在本例中),则存在默认属性页类。
使用“对话框编辑器”将任何控件添加到属性页模板。
自定义从 COlePropertyPage 派生的类的 DoDataExchange 函数,以在属性页控件与 ActiveX 控件之间交换值。
为举例说明,下列过程使用一个名为“Sample”的简单控件。“Sample”是用“ActiveX 控件向导”创建的,且只包含常用 Caption 属性。
将控件添加到属性页
将控件添加到属性页
在控件项目打开时,打开“资源视图”。
双击“Dialog”目录图标。
打开 IDD_PROPPAGE_SAMPLE 对话框。
“ActiveX 控件向导”将项目名称追加到对话框 ID 的末尾(在本例中为“Sample”)。
将选定的控件从工具箱拖放到对话框区域。
在本例中,文本标签 (Label) 控件“Caption :”和具有 IDC_CAPTION 标识符的编辑框控件已经足够。
在工具栏上,单击“保存”保存更改。
用户界面已修改,现在需要链接编辑框与 Caption 属性。在下一节中通过编辑 CSamplePropPage::DoDataExchange 函数完成此操作。
自定义 DoDataExchange 函数
属性页 DoDataExchange 函数使您得以将属性页值与控件中的实际属性值链接。若要建立链接,必须将适当的属性页字段映射到它们各自的控件属性。
使用属性页 DDP_ 函数实现这些映射。DDP_ 函数的运行与标准 MFC 对话框中使用的 DDX_ 函数相似,但有一处例外。除对成员变量的引用外,DDP_ 函数还使用控件属性的名称。下面是属性页的 DoDataExchange 函数中的一个典型项。
DDP_Text(pDX, IDC_CAPTION, m_caption, _T("Caption"));
此函数使用 DDP_TEXT 函数将属性页的 m_caption 成员变量与 Caption 相关联。
插入属性页控件后,需要使用 DDP_Text 函数在属性页控件 IDC_CAPTION 与实际控件属性 Caption 之间建立链接(如前所述)。
其他对话框控件类型(如复选框、单选按钮和列表框)也可以使用 DDP 函数。下表列出了完整的属性页 DDP_ 函数集及各函数的作用:
属性页函数
函数名 函数的作用
DDP_CBIndex 链接组合框中选定字符串的索引与控件属性。
DDP_CBString 链接组合框中的选定字符串与控件属性。所选字符串可以以与属性值相同的字母开始,但不必完全与其匹配。
DDP_CBStringExact 链接组合框中的选定字符串与控件属性。所选字符串和属性的字符串值必须完全匹配。
DDP_Check 链接复选框与控件属性。
DDP_LBIndex 链接列表框中选定字符串的索引与控件属性。
DDP_LBString 链接列表框中的选定字符串与控件属性。所选字符串可以以与属性值相同的字母开始,但不必完全与其匹配。
DDP_LBStringExact 链接列表框中的选定字符串与控件属性。所选字符串和属性的字符串值必须完全匹配。
DDP_Radio 链接单选按钮与控件属性。
DDP_Text 链接文本与控件属性。
aspnetwuxueyou
2004-04-16
打赏
举报
回复
还没人回答,关注。我也没弄明白
whatyayaya
2004-04-16
打赏
举报
回复
老大们,
我尿都快急出来了
whatyayaya
2004-04-16
打赏
举报
回复
难道就没有人知道吗?
aspnetwuxueyou
2004-04-16
打赏
举报
回复
up
whatyayaya
2004-04-16
打赏
举报
回复
up
Visual C++ 编程资源大全(英文源码
ActiveX
)
26.zip
ActiveX
Control
Property
Page
Container
ActiveX
控制
属性
页容器(6KB)<END><br>27,27.zip a popup list box like that in Visual C++ 6.0
一个
具备VC6.0风格的弹出式列表框(6KB)<END><br>28,28....
ActiveX
控件
(
MFC
篇)
第1章 VC++6.0创建
控件
1 1.1 目标 1 1.1.1 方法 1 1.1.2
属性
1 1.1.3 事件 1 1.2 创建项目 2 1.3 项目结构 6 1.3.1 COM接口 6 1.3.2 COM类 7 1.3.3
属性
页
开发基于
MFC
的
ActiveX
控件
的时候的一些消息处理
MFC
有PreTranslageMessage() 可以处理一些基于
MFC
的消息处理。 可是有时候如果你开发
一个
基于
MFC
的
ActiveX
作为容器,内部实现是Win32 或者其他框架会发现,好多消息都不能...根本原因是基于
MFC
的
ActiveX
控件
没有自己的
MFC
中
Tab
控件
的使用详解
1. 新建
一个
MFC
工程, 取名... 添加Tab Control
控件
并在
Property
属性
中
设置ID为IDC_TABTEST 在More Styles里勾上Bottom. 调速尺寸使其布满整个对话框, 我这边Tab Control的尺寸最后为164X203. 在ClassWizard为
MFC
基础
控件
说明
一. button
控件
1. CButton类 2. CSplitButton类 3. C
MFC
Button类 4. C
MFC
ColorButton类 5. C
MFC
MenuButton类 6.CRadioButton类 7. CCheckBox类 二. StaticText 1. CStatic类 2.CLinkCtrl类 三. ....
ATL
3,245
社区成员
48,539
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章