刚开始学 Windows API 编程,参考了小甲鱼的教程,写了个程序玩玩。
运行截图:
目前实现了:
- 自动获取屏幕分辨率和 DPI,并且根据 DPI 缩放文字
- 点击窗口(客户区)可以轮流改变颜色
- 点击关闭按钮弹出退出提示
这个程序并没有太大的实用意义,只是我学习 Windows 编程的一个实验产物。
代码
#include <Windows.h>
#include <strsafe.h>
#define RGBVALUE(hex) ((hex & 0xff) << 16 | (hex & 0xff00) | hex >> 16)
#define BUFFSIZE 128
// The size of textColor and bgColor must be equal.
const COLORREF textColor[] = {
RGBVALUE(0xffffff),
RGBVALUE(0xffffff),
RGBVALUE(0xffffff),
RGBVALUE(0xffffff),
RGBVALUE(0x66ccff)
};
const COLORREF bgColor[] = {
RGBVALUE(0x305066),
RGBVALUE(0x5d65a7),
RGBVALUE(0x0067a6),
RGBVALUE(0xde9dd6),
RGBVALUE(0xffffff)
};
int colorIndex = 0;
const int textColorMax = sizeof(textColor) /