MFC知识点

本文介绍了Windows编程中的两个关键概念:如何使用UpdateWindow()和Invalidate()刷新窗口,以及string和CString之间的相互转换。同时提及了MFC中的_L和T的区别。
摘要由CSDN通过智能技术生成

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、刷新窗口

UpdateWindow()向窗体发送WM_PAINT消息,在发送之前判断看有无可绘制的客户区域,如果没有,则不发送WM_PAINT;

Invalidate()是强制系统进行重画,但是不一定就马上进行重画。因为Invalidate()只是通知系统,此 时的窗口已经变为无效。强制系统调用WM_PAINT,而这个消息只是Post,就是将该消息放入消息队列,当执行到WM_PAINT消息时才会对窗口进行重绘;

当调用Invalidate()之后,屏幕不一定马上更新,因为WM_PAINT消息不一定在队列头部,而调用UpdateWindow会使WM_PAINT消息马上执行的,绕过了消息队列;

如果调用Invalidate之后想马上更新屏幕,那就加上UpdateWindow()这条语句。

注意:

UpdateWindow()和 UpdateData()的区别:

UpdateWindow()是更新整个窗口。

UpdateData()一般是更新编辑框中的数据;

https://www.cnblogs.com/achillis/p/13298474.html

二、GetWindowRect

【C++】Win32 API中窗口尺寸与坐标操作(GetWindowRect等函数)理解与踩坑 - 知乎

三、string和CString相互转换

一、string转CString

string str = "hello world";
CString cstr(str.c_str());


二、CString转string

CString theCStr = L"Hello C++";
std::string STDStr(CW2A(theCStr.GetString()));

四、_L和T的含义及区别

看帖子:MFC中_T或L含义_mfc中_t()未定义标识符lstr-CSDN博客

https://www.baidu.com/link?url=45DX9J8DIJnmzVmXo5X9qcPkON7ft09EVkrXOxFNTCu5EVdGIlm3_8uV6EJM5olSdtwbpXaZ15zy4XREw57K-XaoEoy-_Ja1aM1nLjcSpcC&wd=&eqid=8cf5812000002b7d0000000665687141

该处使用的url网络请求的数据。


总结

提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值