改变状态栏字体(MFC)
0. 定义一个常驻内存的CFont对象
1. 创建一个雅黑字体,并设置字体大小
2. 将该字体对象指针赋值给Status Bar对象
MFC单文档示例:
1 int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
2 {
3 if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
4 return -1;
5
6 if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
7 | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
8 !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
9 {
10 TRACE0("Failed to create toolbar\n");
11 return -1; // fail to create
12 }
13
14 if (!m_wndStatusBar.Create(this) ||
15 !m_wndStatusBar.SetIndicators(indicators,
16 sizeof(indicators)/sizeof(UINT)))
17 {
18 TRACE0("Failed to create status bar\n");
19 return -1; // fail to create
20 }
21
22 m_wndStatusBar.SetPaneInfo(1,ID_INDICATOR_TEXT,SBPS_NORMAL,420);
23 m_wndStatusBar.SetPaneInfo(2,ID_INDICATOR_TEXT,SBPS_NORMAL,120);
24
25 LOGFONT logfont;
26 GetObject(::GetStockObject(DEFAULT_GUI_FONT),sizeof(logfont),&logfont);
27 logfont.lfCharSet=GB2312_CHARSET;
28 logfont.lfWeight = FW_NORMAL;
29 logfont.lfHeight = 24;
30 lstrcpy(logfont.lfFaceName, _T("微软雅黑"));
31 static CFont sfontStatusBar;
32 sfontStatusBar.CreateFontIndirect(&logfont);
33
34 m_wndStatusBar.SetFont(&sfontStatusBar);
35 m_wndStatusBar.SetPaneText(1,_T("状态栏字体测试。[Status Bar Font Test...]"));
36
37
38 // TODO: Delete these three lines if you don't want the toolbar to
39 // be dockable
40 m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
41 EnableDocking(CBRS_ALIGN_ANY);
42 DockControlBar(&m_wndToolBar);
43
44 return 0;
45 }
截图:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)