IE工具栏不但按钮可以包含图标和文字,而且还有一些按钮包含下拉菜单,例如,“后退” 和“前进”按钮。打开第12章建立的“sp”分隔栏工程,用于演示IE工具栏的开发方法。1)修改IDR_MAINFRAME工具栏,删除原有工具按钮并新增一些按钮,如图14-23所示。图14-25 查看运行结果工具栏按钮图标的颜色丢失严重很难看,因此,要先加载位图到CBitmap对象中后,再将位图设置到工具栏中。15)编译并运行,测试代码,这就是IE工具栏,如图14-31所示。......
2023-11-25
工具栏(CToolBar类)带有一行位图按钮和可选分隔线的控件栏,工具栏按钮ID与菜单项一样可以创建命令消息映射函数。
工具栏的创建和加载全部过程,都是在主框架中的CMainFrame::OnCreate函数中实现的。
1)在框架或者视图类的头文件中定义CToolBar类对象。
2)调用CToolBar::Create(或CreateEx)函数工具条窗口。
3)调用CToolBar::LoadToolBar来加载工具条资源。
另外一种创建和加载工具栏的过程如下。
1)定义CToolBar类对象。
2)调用CToolBar::Create(或CreateEx)函数工具条窗口。
3)调用CToolBar::LoadBitmap加载包含工具条按钮图像的位图。
4)调用CToolBar::SetButtons函数设置每个按钮的命令ID。
工具栏既可以停靠在父窗口周边,也可以悬浮在屏幕中,例如,绘图软件中的工具箱就是悬浮工具栏。打开本章第3节的“md”绘图软件工程,用于演示悬浮工具栏的开发方法。
1)将主框架工具栏的绘图相关按钮,拆分成一个单独的工具栏(IDR_TOOLBOX),如图14-18所示。
图14-18 编辑工具栏资源
2)修改主框架CMainFrame类的头文件,添加一个CToolBar类对象。
3)修改主框架类中的OnCreate函数代码,创建一个悬浮工具栏。
4)编译并运行,测试代码,如图14-19所示。
(www.chuimin.cn)
图14-19 查看运行结果
工具栏按钮不仅能带有图标,而且还可以包含文字,例如,IE工具栏。
5)继续修改主框架类的OnCreate函数,在函数末尾添加以下代码。
6)编译并运行,测试代码,如图14-20所示。
图14-20查看运行结果
7)最后一次修改主框架类的OnCreate函数,只需要在创建时添加一个工具栏风格,如图14-21所示。
图14-21 查看运行结果
8)编译并运行,测试代码(使文字在按钮右侧),如图14-22所示。
图14-22 运行
9)CToolBar::CreateEx函数的第二个参数dwCtrlStyle,用于工具栏风格设置,见表14-3。
表14-3 工具栏风格
10)CToolBar::CreateEx函数的第三个参数dwStyle,用于控制栏风格设置,见表14-4。
表14-4 控制栏风格
有关VC++就业培训宝典之MFC视频教程的文章
IE工具栏不但按钮可以包含图标和文字,而且还有一些按钮包含下拉菜单,例如,“后退” 和“前进”按钮。打开第12章建立的“sp”分隔栏工程,用于演示IE工具栏的开发方法。1)修改IDR_MAINFRAME工具栏,删除原有工具按钮并新增一些按钮,如图14-23所示。图14-25 查看运行结果工具栏按钮图标的颜色丢失严重很难看,因此,要先加载位图到CBitmap对象中后,再将位图设置到工具栏中。15)编译并运行,测试代码,这就是IE工具栏,如图14-31所示。......
2023-11-25
图1-16 工具栏工具栏如图1-17所示,用于修改已存在的实体,可对实体进行移位、复制、旋转、删除、修剪和拉伸等操作。图1-20 工具栏工具栏如图1-21所示,主要用于对绘制的图形进行尺寸、公差等标注。图1-21 工具栏4.工具栏的悬浮与停靠AutoCAD的工具栏既可以停靠在绘图窗口的上、下、左、右,也可以悬浮摆放。工具栏中的按钮还具有提示功能。......
2023-11-03
自定义工具栏及菜单示例。图6-9窗口依次将命令列表中的、、、、、命令图标添加到工具栏的下级目录工具栏上,如图6-10所示。图6-10自定义的工具栏的结构因为命令没有默认图标,如果不指定,将在新建的工具栏上显示为问号。单击按钮,结束工具栏的创建。图6-14自定义的工具栏创建自定义菜单的方法与创建工具栏非常相似,读者可参考上述步骤及图6-15创建如图6-16所示的菜单。......
2023-06-21
属性表和属性页,是MFC封装的多页管理类。属性页用于与子页面窗口关联,属性表用于关联管理子页的父窗口。使用MFC应用程序向导,创建一个工程名为“prop”的对话框程序,演示使用属性页和属性表管理多个分页子窗口。图9-25 插入分页子窗口2)子页窗口的标题栏要保留,它将在属性表窗口中显示,如图9-26所示。8)在主对话框内添加的控件与第4节中的完全一样,见表9-9。属性表默认是标签模式显示,调用SetWizardMode函数后以向导模式显示。......
2023-11-25
2)所有控件创建时,都要在CWnd::Create函数中代入窗口ID、风格、位置和父窗口等。4)注册自定义窗口类型。MFC全局函数,先检测要注册的窗口类型是否存在。并将接口参数简化以方便调用,返回值是自动生成的随机窗口类型名。5)创建一个工程名为“wd”的对话框程序,用于演示自定义窗口的注册和创建。总结使用自定义窗口做主窗口的特点如下。......
2023-11-25
CBrush类的主要成员见表7-4。表7-4 CBrush类的主要成员1)用于填充的阴影线风格主要包括以下几种。创建一个工程名为“Brush”的对话框程序,用于演示选用不同画刷进行绘画的效果。2)在资源视图中,单击鼠标右键,在弹出的快捷菜单中,选择“Import”命令导入位图,如图7-16所示。图7-19 查看运行结果CBrush类构造函数与CreateSolidBrush和CreateHatchBrush等函数的功能基本一样,都可以用于创建一个画刷。一般当使用新画刷绘画结束后,最好恢复选择回旧画刷。......
2023-11-25
在本章第5节中,通过“Win32 Application”建立的MFC32工程,目的是为了演示MFC工程的架构原理。一个MFC工程必须包含一个CWinApp的派生类,并定义一个派生类的全局变量theApp,最后重写InitInstance虚函数用于处理进程启动过程。本节直接通过“MFC AppWizard”来创建MFC工程,用于对照以上说明的MFC必备因素。图3-54 程序向导生成的代码图3-55 MFC类向导在Class name下拉列表中选择CTestMFCDlg类,在Member functions列表框中显示4个已添加的回调函数。......
2023-11-25
标签控件,又称选项卡控件。很多软件的用户资料注册部分是采用注册向导模式,而用户资料修改则采用标签控件管理模式。打开本章第3节建立的“usd”工程,本节继续演示采用标签控件来管理多个分页。1)新插入一个对话框资源,作为使用标签控件进行分页管理的父窗口,如图9-20所示。6)添加标签控件的TCN_SELCHANGE消息反射函数OnSelchangeTab,如图9-22所示。图9-24 查看运行结果单击“修改”按钮或者双击列表选项,就会打开带标签控件的修改资料的对话框。......
2023-11-25
相关推荐