gpt4 book ai didi

c++ - 我使用 CreateWindowExA 创建窗口。为什么我的窗口标题文本显示为多字节编码?

转载 作者:可可西里 更新时间:2023-11-01 09:45:23 24 4
gpt4 key购买 nike

我有这个程序:

#include <Windows.h>

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch(message)
{
case WM_CLOSE:
PostQuitMessage(0);
break;

default:
return DefWindowProc(hWnd, message, wParam, lParam);
}

return 0;
}

int main()
{
WNDCLASSA wnd_class = { 0 };
wnd_class.lpfnWndProc = WndProc;
wnd_class.hInstance = GetModuleHandle(NULL);
wnd_class.lpszClassName = "actwnd";

RegisterClassA(&wnd_class);

HWND main_wnd = CreateWindowA(wnd_class.lpszClassName, "Program activation", WS_OVERLAPPEDWINDOW | WS_VISIBLE, 0, 0, 640, 480, NULL, 0, wnd_class.hInstance, NULL);

MSG msg = { 0 };
while(GetMessage(&msg, NULL, 0, 0) > 0)
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}

我不明白为什么窗口标题显示不正确:

enter image description here

它看起来对我来说是未知的原因,有些人仍然认为这是 unicode 两字节编码......

文件高级保存选项编码设置为单字节一-win 1251。

我想完全使用 ANSI 版本,而我的窗口标题只包含 ANSI 字符。

最佳答案

您的窗口过程需要调用 DefWindowProcA

关于c++ - 我使用 CreateWindowExA 创建窗口。为什么我的窗口标题文本显示为多字节编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17987870/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com