最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

利用MFC编程在工具条中增加组合框控件

来源:动视网 责编:小OO 时间:2025-09-27 21:42:50
文档

利用MFC编程在工具条中增加组合框控件

利用MFC编程在工具条中增加组合框控件武汉华中理工大学刘卫忠WindowsUI技术一直是程序设计人员尤其是用户接口程序设计人员最关心的技术。显然新颖美观的界面会给用户留下深刻的印象。Windows操作系统的流行也在于其用户界面的不断创新与改进。Office97、VisualStudio97、Outlook、IE等每一个新的软件的推出都能够给人新的感觉。尤其是这些软件工具条十分丰富美观,如3D形式的工具条、飞行Tips,这些小技巧既富于吸引力,又方便了使用者。我们知道,VisualC++所提供的
推荐度:
导读利用MFC编程在工具条中增加组合框控件武汉华中理工大学刘卫忠WindowsUI技术一直是程序设计人员尤其是用户接口程序设计人员最关心的技术。显然新颖美观的界面会给用户留下深刻的印象。Windows操作系统的流行也在于其用户界面的不断创新与改进。Office97、VisualStudio97、Outlook、IE等每一个新的软件的推出都能够给人新的感觉。尤其是这些软件工具条十分丰富美观,如3D形式的工具条、飞行Tips,这些小技巧既富于吸引力,又方便了使用者。我们知道,VisualC++所提供的
利用MFC编程在工具条中增加组合框控件

武汉华中理工大学

刘卫忠

Windows UI技术一直是程序设计人员尤其是用户接口程序设计人员最关心的技术。显然新颖美观的界面会给用户留下深刻的印象。Windows操作系统的流行也在于其用户界面的不断创新与改进。Office 97、Visual Studio 97、Outlook、IE等每一个新的软件的推出都能够给人新的感觉。尤其是这些软件工具条十分丰富美观,如3D形式的工具条、飞行Tips,这些小技巧既富于吸引力,又方便了使用者。我们知道,Visual C++所提供的标准工具条中基本上只有一些简单的诸如文档打开、存储以及一些编辑功能按钮,而Visual C++自身的工具条功能十分丰富,尤其是工具条中内嵌的组合框控件十分方便。实际上利用MFC编程在工具条中增加一些有趣的控件还是比较容易的,下面我们就谈谈如何利用MFC编程在工具条中增加组合框控件。

1. 创建AppWizard工程文件设为toolbar,采用系统缺省设置。

2. 打开资源编辑器,选择工具条,在工具条中增加一个按钮,设置按钮 I D 为 I D_MY_COMBO_BOX 。 移动该按钮以使按钮处于适当的位置。

3. 从 C ToolBar 派 生出一个新类 C MyToolBar , 在 C MyToolBar 类 中增加一个成员变量 m_wndMyComboBox , 代码如下:

class CMyToolBar : public CToolBar

{

public:

CComboBox m_wndMyComboBox;

};

注意要将代码放在工程文件mainframe.h中“#endif // _MSC_VER > 1000”语句之后,类CMainFrame定义之前。

4. 将工程文件mainframe.h中的CToolBar变量m_wndToolBar用CMyToolBar变量m_wndToolBar代替。同时增加函数CreateMyComboToolBar()声明。代码如下:

protected: // control bar embedded members

CStatusBar m_wndStatusBar;

CMyToolBar m_wndToolBar;

int CreateMyComboToolBar();

5. 在工程文件mainframe.cpp中的OnCreate()函数返回语句之前调用函数CreateMyToolBar();代码如下所示:

if(!CreateMyComboToolBar())

MessageBox("Create My Combo ToolBar Failure");

6. 以文本方式打开资源头文件resource.h,增加一个控制ID如下,注意该控制的ID值不要与其它控制或资源的ID值重复:

#define IDC_MY_COMBO1111

7. 在工程文件mainframe.cpp中增加函数CreateMyToolBar();代码如下:

int MainFrame::CreateMyToolBar()

{

#define COMBO_BOX_WIDTH 80 //the width of the combo box

//set up the ComboBox control as a select box

//First get the index of the button's

position in the toolbar

int index = 0;

CRecr rect;

while(m_wndToolBar.GetItemID(index)!

= ID_MY_COMBO_BOX) index++;

//next convert that button to a

seperator and get its position

m_wndToolBar.SetButtonInfo(index,

ID_MY_COMBO_BOX, TBBS_SEPARATOR, COMBO_BOX_WIDTH);

m_wndToolBar.GetItemRect(index, &rect);

//expand the rectangle to allow

the

combo box room to drop down

rect.top+=2;

rect.bottom += 200;

// then .Create the combo box and show it

if (!m_wndToolBar.m_ wndMyComboBox.Create(

WS_CHILD|WS_VISIBLE | CBS_AUTOHSCROLL |

CBS_DROPDOWNLIST | CBS_HASSTRINGS ,

rect, &m_wndToolBar, IDC_MY_COMBO))

{

TRACE0("Failed to create combo-box\

");

return FALSE;

}

m_wndToolBar.m_wndMyComboBox.ShowWindow(SW_SHOW);

//adding string to the combo box

m_wndToolBar.m_wndMyComboBox.AddString("Fisrt Select");

m_wndToolBar.m_wndMyComboBox.AddString("Second Select");

m_wndToolBar.m_wndMyComboBox.AddString("Third Select");

m_wndToolBar.m_wndMyComboBox.AddString("Fourth Select");

m_wndToolBar.m_wndMyComboBox.AddString("Fifth Select");

m_wndToolBar.m_wndMyComboBox.SetCurSel(0);

}

编译并运行该应用,就会发现工具条中多了一个组合框控件。 从上面的例程可以看出,在工具条中增加新的控件,关键在于重写主框架的OnCreate()函数。掌握了这一点,就可以在工具条中增加各种各样的控件了,如增加无限输入(Radio)控件、检查框(Check)控件等。有兴趣的读者可以自己去尝试一下加深理解。

文档

利用MFC编程在工具条中增加组合框控件

利用MFC编程在工具条中增加组合框控件武汉华中理工大学刘卫忠WindowsUI技术一直是程序设计人员尤其是用户接口程序设计人员最关心的技术。显然新颖美观的界面会给用户留下深刻的印象。Windows操作系统的流行也在于其用户界面的不断创新与改进。Office97、VisualStudio97、Outlook、IE等每一个新的软件的推出都能够给人新的感觉。尤其是这些软件工具条十分丰富美观,如3D形式的工具条、飞行Tips,这些小技巧既富于吸引力,又方便了使用者。我们知道,VisualC++所提供的
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top