线程和进程
摘要:什么是进程什么是线程? 我的理解是进程是指在系统中正在运行的一个应用程序;程序一旦运行就是进程,或者更专业化来说:进程是指程序执行时的一个实例。线程是进程的一个实体。进程——资源分配的最小单位,线程——程序执行的最小单位。 线程进程的区别体现在几个方面: 第一:因为进程拥有独立的堆栈空间和数据段,所
阅读全文
线程中的消息循环以及线程中如何开定时器
摘要:线程内也有自己的消息循环,并且在线程中创建的窗口也是通过消息循环来接受消息的。通过窗口开启定时器,这个定时器就是属于线程的定时器。 头文件: CPP文件: MSG msg={0}; ::PeekMessage(&msg,0,0,0,PM_NOREMOVE); //创建消息队列
阅读全文
创建工作窗口
摘要://创建内部工作窗口, 创建失败 ret == NULL, 否则是有效的窗口句柄 //asz_name 窗口类名称 WndProc 窗口过程 asz_wnd_name 窗口名称 //APP关闭时, 需要调用 DestroyWindow() 关闭窗口 inline HWND TfxWorkWindow(const char* asz_name, WNDPROC WndProc,...
阅读全文
windows下关闭进程树
摘要:关闭进程需要特定权限,如果你程序权限不够也会导致关闭进程失败。关闭进程树,需要遍历给定进程下的所有子进程,这个过程可以用并查集来做。 1、编写获取进程父进程的代码 #define ProcessBasicInformation 0 typedef struct { DWORD ExitStatus;
阅读全文
实现PC延迟执行函数
摘要:头文件内容: cpp文件: 具体使用: 注:可能需要其他库
阅读全文
CxImage实现9PNG
摘要:9PNG的意思就是绘制时按9块区域绘制,左上左下右上右下是源,其他是拉伸的部分。CxImage主要使用像素点的方式来进行拉伸,并且每个像素都有copy透明信息。
阅读全文
MFC SkinMagic使用方法
摘要:皮肤库下载地址 https://pan.baidu.com/s/1IuiYlFUJIi-TS9Cgz3M6RA 1、创建MFC工程 2、然后把corona.smf、SkinMagic.dll、SkinMagic.lib、SkinMagicLib.h复制到工程文件中。 3、设置工程 属性--常规--字
阅读全文
win32动态库
摘要:先讲一个基本的动态库,功能为自定义一个动态库,里面有一个函数MyMessage实现弹出MessageBox。 1、 先在头文件中定义: 2、在头文件中定义自己的需要函数,比如:EXPORT VOID MyMessage(HWND hwnd,LPCTSTR lstr); 3、在.cpp文件中实现自定义
阅读全文
基本图形的扫描转换(绘图函数的自定义实现)和反采样。
摘要:基本图形的扫描转换这个名词不太容易理解,通俗地讲就是通过SetPixel或者SetPixelV函数来实现绘图,比如画一条直线会使用LineTo,同样可以用SetPixel函数实现。 其中SetPixel与SetPixelV的区别,SetPixelV不放回实际像素点的RGB值,执行速度比SetPixe
阅读全文
win32之bitmap篇
摘要:先讲一下LoadBitmap的用法,代码如下: BitBlt的作用是把hMemDC上的内容拷贝到hdc上,不进行缩放,但是可以位移。 如果想要缩放,可以使用StretchBlt,以下这个例子比较有趣,是把整个屏幕绘制到窗口中。
阅读全文
win32窗口映射(部分)
摘要:先理解一下“窗口”与“视区”的概念。“窗口”是逻辑坐标下的矩形区域,“视区”是设备坐标系下的区域。根据“窗口”和“视区”的大小可以确定x方向和y方向的比例因子。 例子如下: 注:最后最好把设置都改回来(SetViewportOrgEx(hMemDC,0,0,NULL)或者SetWindowOrgEx
阅读全文
Win32子窗口的创建
摘要:本文主要是在一个主窗口下创建一个子窗口。主窗口有一个菜单,菜单下只有设置一个选项,点击设置选项,弹出设置界面,点击设置界面关闭则关闭。我在开发的时候遇到两个问题,第一就是一点设置关闭就整个应用都关了,原来是destroy消息共用了。然后第二个是点击关闭后,设置界面再也显示不出来了,原来是close消
阅读全文
Win32双缓冲讲解
摘要:双缓冲是一种思想,也是一种方法,它可以避免频繁的闪烁问题。如果在画布上直接绘画,由于每次都会重新擦除然后重绘,绘制需要时间,所以肉眼会看到闪烁问题。解决的方法就是在内存中先创建出一个内存dc,然后在内存dc中绘制,绘制结束后,直接“贴”上去就好了。 具体步骤如下: 1、声明 HDC hMemDC;
阅读全文
好的学习网站
摘要:学习OpenGL的网址: 英文版:https://learnopengl.com/ 中文版:https://bullteacher.com/category/zh_learnopengl_com 这两个网站都是从零开始学习的网址,适合初学者。 OpenGL的官网:https://www.opengl
阅读全文
TextOut与DrawText的区别
摘要:BOOL TextOut( HDC hdc, // 句柄 int nXStart, // 字符串的开始位置 x坐标 int nYStart, // 字符串的开始位置 y坐标 LPCTSTR lpString, // 字符串 int cbString // 字符个数 ); int DrawText(
阅读全文
win32绘图基础
摘要:获取设备环境句柄: (1)WM_PAINT消息中: PAINTSTRUCT ps; HDC hdc = BeginPaint(hwnd,&ps); EndPaint(hwnd,&ps); PAINTSTRUCT中包含一个名为rcPaint的矩形结构体,该结构体定义了客户无效区范围的矩形。 (2)非W
阅读全文
Win32基础知识整理
摘要:1、定义字符串 在资源新建String table,增加新字符串; (win32加载) TCHAR tcIDName[255]=_T(""); LoadString(hInstance,IDS_NAME,tcIDName,255); 2、窗口居中 在WM_CREATE消息中增加如下代码: 3、TCh
阅读全文
Win32最简单的程序
摘要:注意:需要设置多字符集,不然编译无法通过。在项目出右击属性。常规->字符集->选择多字符集。
阅读全文