文档详情

VISUAL C++ MFC 编程基础..ppt

发布:2018-09-17约1.95万字共126页下载文档
文本预览下载声明
* 注意事项 * * * * * * DIB 位图的使用(2/2) DIB 位图的变换 从 GDI 位图到 DIB 位图 ::GetDIBits(设备,位图,行范围,点阵,DIB头 ... 从 DIB 位图到 GDI 位图 CDC::CreateDIBitmap(DIB头,点阵,... * 屏蔽位图生成方法 从彩色位图产生单色位图,用于实现透明背景 CBitmap bmp; bmp.CreatBitmap(宽度,高度,1,1,0); // 单色位图 CDC memDC; memDC.CreateCompatibleDC( 输出设备 ); memDC.SelectObject( bmp ); ::SetDIBits( memDC.m_hDC, bmp.GetSafeHandle(), 首行,行数,点阵指针,DIB头指针, DIB_RGB_COLORS); // 将指定的 DIB 位图变换成单色 GDI 位图 * 五、对话框和控制框 5.1 资源编辑 5.2 对话框 5.3 控制框的使用 5.4 综合应用例 * 5.1 资源编辑 资源种类 对话框模板 DIALOG 菜单模板 MENU 图标 ICON 光标 CURSOR 位图 BITMAP 加速键表 ACCELERATORS 字符串表 STRINGTABLE 工具条模板 TOOLBAR * VC 的资源编辑器 新建 Insert -- Resouce -- 选择资源 修改 直接双点指定资源的图标 编辑 不同资源采用不同编辑器 程序识别方法 资源标识符(整数) * 菜单模板的编辑 结构描述(190页) 菜单 菜单标识符 MENU 子菜单项 POPUP “字体(F)” 菜单项 MENUITEM “宋体\tCtrl-S” 标识符 指定菜单标识符IDR_MAINMENU 选择菜单项 双点进入属性编辑 编写显示文本等属性 指定菜单项标识符ID_FONT_SONGTI * 对话框模板的编辑 编辑窗 显示对话框和控制框工具条 编辑 指定对话框标识符和属性 选择控制框,拖入对话框 双点控制框,进入属性编辑 编辑属性,指定控制框标识符 * 对话框的资源描述 .RC IDD_MYDIALOG DIALOG DISCARDABLE 0,0,230,104 STYLE DS_MODALFRAME|WS_POPUP|WS_CAPTION|WS_SYSMENU CAPTION “My Dialog” FONT 10, “System” BEGIN DEFPUSHBUTTON “OK”,IDOK,173,7,50,14 PUSHBUTTON “Cancel”,IDCANCEL,173,24,50,14 CTEXT “This is a dialog”,IDC_STATIC,130,56,87,17 CONTROL 103,IDC_STATIC,”Static”,SS_BITMAP,7,7,120,90 END // 225 页 * 5.2 对话框 编程支持 SDK 的支持 (API): 使用特殊的窗口函数(指定对话框模板) 系统提供窗口类 MFC 的支持: void CMainWnd::OnHelpAbout( ) { CDialog CAboutdlog( IDD_MYDIALOG, this ); // 创建对话框对象 CAboutdlog.DoModal( ); // 启动对话 } * 对话框的消息响应 定义 CDialog 派生类 CMyDialog 各种消息响应函数 OnInitDialog 对话框初始化 OnOK 确认按钮 OnCancel 取消按钮 获得控制框对象(界面元素) CDialog::GetDlgItem(控制框标识符) 在 ClassWizard 中设定 * 窗口的分类 用户界面元素的容器 各种对话框(CDialog 派生类) 各种视窗(CView 派生类) 产生窗口状态变化消息 用户界面的基本元素 各种控制框(CControl 的派生类) 向上级窗口发送通知消息 * 5.3 控制框的使用 六种主要的控制框 按钮框(包括单选钮、复选钮、分组框) 静态框(文本显示) 编辑框(单行、多行编辑) 列表框(单选、复选) 滚动条框(水平、垂直) 组合框(可编辑、不可编辑) MFC 支持 CButton CStatic CEdit CListBox CScrollBar CComboBox * 两种使用方法 作为子窗口 控制框对象作为上级窗口类的成员变量 动态生成 在 OnCreate 中调用该对象的 Create、指定风格与属性 作为对话框元素 在对话框模板中定义控制框、描述其风格与属性
显示全部
相似文档