黑马程序员MFC学习第二天
一、模态与非模态
1、模态对话框 DoModal()函数
2、非模态对话框Create(IDD_DIALOG_SHOW) 函数,ShowWindow(SW_SHOWNORMAL);函数,Create()函数应放在初始化函数里。
二、静态文本
1、获取文本信息函数 GetWindowTextW,设置文本信息函数 SetWindowTextW,设计点击状态函数 EnableWindow(),填FALSE意味着使用后“白化”。
2、设置图片为静态文本
(1)、添加窗口风格 ModifyStyle(0xf,SS_BITMAP | SS_CENTERIMAGE)函数
(2)、通过路径获取BitMap句柄 #define HBMP(filepath,width,height) (HBITMAP)LoadImage(AfxGetInstanceHandle(),filepath,IMAGE_BITMAP,width,height,LR_LOADFROMFILE | LR_CREATEDIBSECTION)
(3)、宽高设置 取控件设置的大小 CRect rect; GetWindowRect(rect);
(4)、静态控件设设置bitmap SetBitmap(HBMP(TEXT("./19.BMP"),rect.Width(),rect.Height()))
ps:别忘了把bmp图片文件放在与Debug同级别的文件夹下
三、Contrl类别处理编辑框
1、主要是编辑框的资源设置
(1)、Multiline可以设置多行
(2)、CDialog ::OnOK() 或OnCancel()函数可以退出MFC
(3)、Vertical Scroll设置上下滚动
(4)、Horizontal Scroll设置左右滚动
(5)、在编辑框中按回车键自动执行OnOK()函数,我们可以设置在类视图中右击打开属性,设置重写以取消OnOK()函数
四、Value类别处理编辑框
1、Value相当于获得了控件中的值,Contrl相当于获得了控件的一个句柄
2、UpdateData()
TRUE与FALSE分别处理更新控件变量与更新控件内容...
Fales是同步到控件中
TRUE是同步到变量中
五、下拉框
1、下拉框初始化:.AddString(TEXT(”"))
2、设置默认项 .SetCurSel(0) 0代表下标
3、插入 .InsertString(3,TEXT(""));
4、删除 .DeleteString(3);
5、获取索引内容 GetLBText(1,str)
六、列表控件
初始化
1、列初始化 InsertColumn (最上面那一行,不算第0行)
2、行初始化 InsertItem(最左边那一列,算是第0列)
3、其他成员 SetItemText
4、设置属性 整行选中状态 显示网格 ListCtr.SetExtendedStyle(ListCtr.GetExtendedStyle() | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES);
七、树控件
1、设置HICON图标 icons[0] = AfxGetApp()->LoadIconW(IDI_ICON1);
2、创建图片集合 list.Create(30,30,ILC_COLOR32,4,4);(list需要在头文件声明)
3、添加具体的图片 list.Add(icons[i]);
4、放入图片 c_TreeCtrl.SetImageList(&list,TVSIL_NORMAL)
5、设置节点 HTREEITEM parent = c_TreeCtrl.InsertItem(TEXT("父节点"),1,1,root);
6、设置默认选项 c_TreeCtrl.SelectItem(sub2);
八、标签页
1、下载CTabSheet.cpp与.h文件
2、添加标签页 c_Tab.AddPage(TEXT("随便创建的2"),&dlg2,IDD_DIALOG2);
3、显示 Show();