导航
  • 主页
  • VC综合技术
  • 互联网技术
  • MFC AppLauncher
  • .NET 技术
  • 界面
  • 进程
  • 算法
  • 硬件/系统
  • 数据库
  • VC++技术资源

如何在工具条中加入自己的checkbox呢?难看是难看了点,但我想知道如何实现,谢谢了。

6188806 2004-04-07 12:31:47

我知道可以在资源文件加入,但不知道有没有在工具栏编辑器中直接加入的方法,感觉更直接一些吗?

...全文
85 点赞 收藏 1
写回复
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
liquanle 2004-04-07
Visual C++是一个基于windows平台的强大开发工具。它提供了大量的控件使程序员的工作变得简单而有效。控件是任何可视化开发工具的重要组成部分,使用它,可以很容易地编写具有windows标准界面风格的就用程序。但要使自己的程序界面丰富多彩,那就需要好好想想了,本文将介绍一种有效的方法——VC控件的组合使用。
例1:检查列表框
检查列表框在很多的安装程序中得到广泛使用,它的效果看起来是将一个检查框放入到一个列表框当中,比如win98安装附件程序时的窗口主体就是一个检查列表框,它的每一项由一行文本或一个小图标与前面一个检查框组成。下面就让我们来实现它。
实现思想:根据面向对象的方法,我们只需将一个检查列表框的类对象加入到欲含有检查列表框的窗口对象中,然后在窗口对象的初始化函数中绘制它。
具体步骤:
1.为你的应用程序添加一个对话框,ID值为IDD_MYDIALOUG,在“style”属性栏中将它的“owner draw”属性设为“Fixed”。
2.向该对话框中,加入一个列表框IDC_LBLISTDEMD
3.用Class wizard为列表框添加成员变量m_my_checkist,它的数据类型为CListBox。
4.找到添加的对话框的类定义处,将CListoBox类型改为CCheckListBox类型。
5.为对话框的WM_INITDIALOG消息添加消息处理函数,OnMylnlt并添加代码如下:
m_my_checklist.Addstring(_T("ITEM1"));
m_my_checklist.Addstring(_T("ITEM2"));
m_my_checklist.Addstring(_T("ITEM3"));
m_my_checklist.SetCheckStyle(BS_AUTO3STATE);
6.在需要的地方添加自己的弹出对话框代码。
7.编译运行即可。
例2:工具条中加入组合框
工具条是windows应用程序中不可缺少的部分,它方便了用户的操作,为熟练用户节省了宝贵的时间,熟练运用它是很重要的,VC的应用程序向导对基于单文档和多文档的应用程序提供了工具条支持,不过不直接支持组合框控件,而在我们常用的软件中,比如word,其处理字体,改变大小、型号都可直接用工具条上的组合框实现,本处将介绍一种好的方法,在工具条中加入给合框控件。
实现思想:
1.在工具条上要加入组合框的位置加一个空按钮;
2.将组合框对象加入到工具条对象中;
3.在工具条的创建函数中绘制组合框;
4.为组合框添加字符串;
5.加入组合框的消息处理函数。
具体步骤:
1.生成一个单文档的应用程序,mytest在工具条的第3个位置加入一个空按钮,ID值为IDC_MYCOMBOX。
2.用class wizard生成一个工具条的类对象基类为CtooLbarCtrl,新类为CMyComboBar,在新类的定义处将基类由CtoolBarCtrl 改为CtoolBar,为新类添加成员变量。
ClomboBox m_mycombobox;
3.把CMainFrame类中的工具条成员变量m_wndToolBar的类型由CtoolBar改为CmyComboBar并在CMainFrame的OnCreate函数中加入如下代码:
Crect rect;
M_wndToolBar.SetButtonlnfo(3,IDC_MYCOMBOX,TBBS_SEPAR ATOR,120);
m_wndToolBar.GetItemRect(3,&rect);
rect.bottom+=100;
if(m_wndToolBar.m_mycombox.Create(CBS_DROPDOWN|WS-VISIBLE|WS_TABSTOP|(BS_AVTOHSCROLL,rect, &m_wndTooLBar,IDC_MYCOMBOX))
return -1;
m-wndTooLBar.M-mycombox.Add String("家用电脑");
4.至此,已完成了显示工作,下面只需根据自己的需要为组合框添加消息处理函数即可。
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告

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