如何解决如何使用 GDI+ 在 C++ 中更改按钮、标签等常用控件文本的字体样式?
我正在尝试使用 GDI+ 更改按钮的字体样式,但我不知道该怎么做。
我的按钮 -
HWND btn = CreateWindow(L"BUTTON",L"My button",WS_TABSTOP | WS_VISIBLE | WS_CHILD | BS_DEFPUSHBUTTON,50,100,300,hWnd,NULL,NULL);
我已经初始化了 GDI+ -
GdiplusstartupInput gdiplusstartupInput;
ULONG_PTR gdiplusToken;
Gdiplusstartup(&gdiplusToken,&gdiplusstartupInput,NULL);
还要关闭它-
GdiplusShutdown(gdiplusToken);
请帮忙
解决方法
常用控件不使用 GDI+。您需要使用 LOGFONT。
HWND TextBox;
TextBox = CreateWindowW(WC_EDIT,L"",WS_BORDER | WS_VISIBLE | WS_CHILD,330,130,300,100,hWnd,NULL,NULL);
LOGFONT logfont;
ZeroMemory(&logfont,sizeof(LOGFONT));
logfont.lfCharSet = DEFAULT_CHARSET; //Font
logfont.lfHeight = 20; //Font Height
logfont.lfWidth = 23; //Font Width
logfont.lfWeight = 300; //Font Weight
//If want
logfont.lfItalic = true; // Italic (Boolean)
logfont.lfUnderline = true; // Underline (Boolean)
HFONT hFont = CreateFontIndirect(&logfont);
SendMessage(TextBox,WM_SETFONT,(WPARAM)hFont,TRUE);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。