我正在制作一个 C++ 框架,它提供窗口、事件、输入和渲染,作为我所有 2D 和 3D 模拟的基础。因为我是用本机 API 制作的,所以我想知道是否有人知道如何更改 Windows 中窗口上的图标(如果可能的话,不要使用 rc 文件,因为我是用 CMake 和 Clang 构建的)。
尝试过这个:
WNDCLASSEX wc = {}
wc.hIcon = LoadIconA(hInstance, MAKEINTRESOURCE("icon.ico"));
感谢您的宝贵时间!
我通过这个解决了它:
@IInspectable 建议我通过 LoadImage 加载图标
HICON hIcon = static_cast<HICON>(LoadImage(
mConnection,
"icon.ico", // Path to your icon file or
// resource ID
IMAGE_ICON, GetSystemMetrics(SM_CXICON),
GetSystemMetrics(SM_CYICON), LR_LOADFROMFILE | LR_DEFAULTSIZE));
if(hIcon) {
SendMessageA(mHandle, WM_SETICON, ICON_BIG,
reinterpret_cast<LPARAM>(hIcon));
SendMessageA(mHandle, WM_SETICON, ICON_SMALL,
reinterpret_cast<LPARAM>(hIcon));
}