正文

谈VC控件的组合使用2007-08-06 17:20:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/sword2008/28256.html

分享到:

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.至此,已完成了显示工作,下面只需根据自己的需要为组合框添加消息处理函数即可。

阅读(3001) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册