黑马程序员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();


__EOF__

本文作者_TLSN
本文链接https://www.cnblogs.com/lordtianqiyi/articles/15706442.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角推荐一下。您的鼓励是博主的最大动力!
posted @   TLSN  阅读(89)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示