更改Win32 Windows项目中的默认窗口字体
发布时间:2020-12-14 04:01:54 所属栏目:Windows 来源:网络整理
导读:我正在使用C和Win32 api创建一个GUI应用程序.我想知道如何将主窗口的默认字体更改为thaoma.我是从.NET背景出来的.在.NET中,如果我们更改父控件的字体,那么子控件会自动继承该字体…. 是否有相似之处或我们需要手动设置每个控件的字体….. 考虑以下代码…… #
我正在使用C和Win32 api创建一个GUI应用程序.我想知道如何将主窗口的默认字体更改为thaoma.我是从.NET背景出来的.在.NET中,如果我们更改父控件的字体,那么子控件会自动继承该字体….
是否有相似之处或我们需要手动设置每个控件的字体….. 考虑以下代码…… #include <windows.h> #define ID_EDIT 1 #define ID_BUTTON 2 LRESULT CALLBACK WndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam) { static HWND hwndEdit; static HWND hwndButton; static int len; static TCHAR text[30]; switch(msg) { case WM_CREATE: hwndEdit = CreateWindow(TEXT("Edit"),NULL,WS_CHILD | WS_VISIBLE | WS_BORDER,50,150,20,hwnd,(HMENU) ID_EDIT,NULL); hwndButton = CreateWindow( TEXT("button"),TEXT("Set Title"),WS_VISIBLE | WS_CHILD,100,80,25,(HMENU) ID_BUTTON,NULL); break; case WM_DESTROY: PostQuitMessage(0); break; } return DefWindowProc(hwnd,msg,wParam,lParam); } int WINAPI WinMain( HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow ) { MSG msg ; WNDCLASS wc = {0}; wc.lpszClassName = TEXT( "Edit Control" ); wc.hInstance = hInstance ; wc.hbrBackground = GetSysColorBrush(COLOR_3DFACE); wc.lpfnWndProc = WndProc ; wc.hCursor = LoadCursor(0,IDC_ARROW); RegisterClass(&wc); CreateWindow( wc.lpszClassName,TEXT("Edit control"),WS_OVERLAPPEDWINDOW | WS_VISIBLE,220,280,200,hInstance,0); while( GetMessage(&msg,0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return (int) msg.wParam; } 如何在上面的程序中更改按钮,文本框的字体.. 请帮助我…….并让我知道在win32 api中编码的一般过程…. 提前致谢.. 解决方法
您可以通过发送WM_SETFONT消息来设置窗口的字体:
HWND myButton = CreateWindowEx(/* ... */); HFONT myFont = /* ... load font from somewhere ... */ /* Change the button font. */ SendMessage(myButton,WM_SETFONT,WPARAM(myFont),TRUE); 这种方法为您提供了一个控制控件,可以控制您正在使用的字体,但每个窗口只需要执行一次. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows服务 – Mongodb,分片和多窗口服务
- windows – 匿名,身份验证,模拟和委托有什么区别,为什么委托
- active-directory – 如何让我的域控制器与正确的外部时间源
- windows – 使用批处理备份注册表
- windows-phone-7 – 如何禁用Windows Phone 7中列表框项目中
- 为什么Direct3D仅适用于Windows?
- windows – 什么是衡量网络延迟的最佳工具?
- windows-phone-7 – 匹配ApplicationIcon.jpg强调色
- windows – 每个应用程序配置文件bindingRedirect不适用于D
- windows-8 – Windows 8是否支持Visual Source Safe?