怎样通过子窗口的按钮改变主窗口checkbox的状态?

YUANBO2003 2004-08-08 06:45:39
在主窗口中我把checkbox的style设为push like,按下后跳出一个子窗口,如果按了子窗口的OnOk,则checkbox状态不变仍为选中而且enable为false,如果按了子窗口的OnCancel,我希望checkbox状态为不选中。
因为是新手,对vc中的消息传递不熟,希望各位老师们多多指点!
...全文
107 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
YUANBO2003 2004-08-08
  • 打赏
  • 举报
回复
哎呀手头没有工具试,只好明天试好了,给你们分吧!
lqipan 2004-08-08
  • 打赏
  • 举报
回复
先把你的控件建立一个控件实例(比如是m_ctlCheck1),然后在楼上的那个兄弟中的函数中调用, m_ctlCheck1.SetCheck(1);在cancle的rt中调用m_ctlCheck1.SetCheck(0);
Kudeet 2004-08-08
  • 打赏
  • 举报
回复
这是一个给CFatherDlg中的控件赋值的例子:
((CFatherDlg*)(CDialog*)GetParent())->SetDlgItemInt(IDC_EDIT_VALUE,m_nValue);
YUANBO2003 2004-08-08
  • 打赏
  • 举报
回复
可是这样checkbox状态还是没有改变吧?因为手头没有vc,不能试,我是这样想的。
iCoder_Me 2004-08-08
  • 打赏
  • 举报
回复
你的子窗口是对话框把,这样做:

CXXDlg dlg; // 你的子窗口对话框
INT_PTR rt;
rt = dlg.DoModel(); // 激活对话框
if(rt==IDOK) {// 按下 ok 按钮以后返回
....
}
else if(rt==IDCANCEL) { // 按下 cancel 以后返回
....
}
大家用惯了BSskin和VCLskin,但是这个跟专业! 支持的开发语言 Borland Delphi 4/5/6 Borland Delphi 7 Borland Delphi 8 Borland Delphi 2005 Borland Delphi 2006 CodeGear Delphi 2007 支持的操作系统 Windows Vista Wndows 2000/XP/2003 Windows NT4.0 Windows Me Windows 98/98SE Windows 95 版本信息 当前版本:3.0 文件大小:24.9MB 更新日期:2006-12-6 下载次数:22670 软件概述 Skin++ For Delphi目前全面支持Delphi4、Delphi5、Delphi6、Delphi7、Delphi8、Delphi2005、Delphi2006。 迄今为止,Delphi支持4种类型的应用程序: 1、VCL Forms Application – Delphi for Win32 (该类型在Delphi4/5/6/7/2005/2006所有版本包含); 2、VCL Forms Application – Delphi for .Net (该类型在Delphi8/2005/2006中包含); 3、Windows Forms Application – C# Builder (该类型在Delphi2005/2006中包含); 4、Windows Forms Application – Delphi for .Net (该类型在Delphi8/2005/2006中包含)。 Skin++对以上4种Delphi程序类型做了全面的支持。 试用版本描述与运行截图 1.在本安装盘中,包含了Delphi的各个版本(D6,D7,D8,D2005,D2006)Skin++测试例; 2.关于如何使用Skin++,请参考文档《Skin++ For Delphi [All Edition]使用帮助》; 3.要查询Skin++所有的接口,请参考文档《Skin++接口描述》; 4.本安装盘提供一套试用皮肤PixOS.ssk,正式版用户将获得网站上更多更精美的皮肤。并可获得定期更新; 5.Skin++正式版中提供强大的皮肤设计工具Skin++Builder。 该工具完成皮肤所有的设计工作,并可以全自动导入Windows题、第三方题; Skin++Builder使用详情请参考《Skin++Builder Help》; 6.案例说明: 我们以Delphi2006 VCL Win32的测试例为例,描述其组成。 打开\Delphi 2006\VCL Forms Application - Delphi For Win32\目录中的MDIAPP.exe 该例是一个MDI类型的程序。窗口部分演示Skin++在MDI方面处理的各个细节。 如:菜单条、弹出菜单、系统菜单、工具条、状态条、MDI客户区、MDI窗口、MDI窗口最大化后等各个部分的换肤细节。 Skin++ 3.0 可以对皮肤进行动态的色调设置 这个功能可以使您的程序可以瞬间拥有N套色调的皮肤。 更改色调样例1: 我们分以下几个页面对Delphi的全部控件进行了演示: Buttons、Static、Controls with ScrollBar(带滚动条的控件)、Splitter、TabControls、TrackBar & Progress、Misc Controls、Dialog、DataControls 6.1 Buttons 该部分我们演示了Skin++对Delphi的各种类型的按钮进行的换肤支持, 包括BitBtn按钮、SpeedButton、Tbutton、CheckBox、RadioBox 在该部分,还演示了对按钮进行多风格的换肤效果,“Style 2”按钮和其他按钮不同,呈现了其特有样式。 这种效果一般用在网络电话、多媒体软件、网络聊天等需要同时支持多种按钮风格的地方。 每个按钮具有其固定的5中状态:正常、按下、高量、禁用、默认。在该窗体中演示了每种按钮的5中状态。 并且在Skin++ 3.0 中,支持Focus的效果。通过Tab或方向键可以看到焦点在每个按钮上移动。 6.2 Static 该部分演示了Skin++ 对Label、GroupBox、右键菜单、Panel、FlowPanel、GridPanel等控件的支持。 值得一提的是,Skin++对Label的支持是彻底,并且不像其他的换肤软件需要在窗体上放置一个

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧