使用状态栏工具栏

1.资源-添加-TOOLBAR

画图标。画了一个,第二个会出来。

2.头文件添加成员

CToolBar m_ToolBar; CStatusBar m_StatusBar;

3.初始化

// 创建工具栏
m_ToolBar.Create(this);
m_ToolBar.LoadToolBar(IDR_TOOLBAR1);

// 创建状态栏
m_StatusBar.Create(this);
UINT nIds[3] = { 1,2,3 };
m_StatusBar.SetIndicators(nIds, 3);
// 设置每一栏的信息和文字
m_StatusBar.SetPaneInfo(0, 1, SBPS_STRETCH, 100);
m_StatusBar.SetPaneInfo(1, 2, SBPS_STRETCH, 100);
m_StatusBar.SetPaneInfo(2, 3, SBPS_STRETCH, 100);

// 显示状态栏和工具栏
RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);

// 设置定时器用于更新状态栏
SetTimer(0x100, 1000, NULL);

4.Ctrl+Shift+X召唤类向导-消息-搜索TIMER。编辑代码

void CDefaultDlg::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值

if (0x100 == nIDEvent)
{
CString TempString;

// 获取系统时间
SYSTEMTIME SystemTime = { 0 };
GetSystemTime(&SystemTime);

// 格式化之后输出到每一栏
TempString.Format(L"时间: %d 时 %d 分 %d 秒", SystemTime.wHour,
SystemTime.wMinute, SystemTime.wSecond);
m_StatusBar.SetPaneText(0, TempString);

TempString.Format(L"日期: %d 月 %d 日", SystemTime.wMonth,
SystemTime.wDay);
m_StatusBar.SetPaneText(1, TempString);

TempString.Format(L"年份: %d 年", SystemTime.wYear);
m_StatusBar.SetPaneText(2, TempString);
}

CDialogEx::OnTimer(nIDEvent);
}

5.响应按钮

BEGIN_MESSAGE_MAP(CMFC8Dlg, CDialogEx)

ON_COMMAND_RANGE(ID_BUTTON32771, ID_BUTTON32774, OnToolIndex)

END_MESSAGE_MAP()
   
   
// 工具栏的响应方式和按钮相同
VOID CDefaultDlg::OnToolIndex(UINT nId)
{
// 获取是第几个
int index = nId - ID_BUTTON32771;

// 转换成字符串
CString Text;
Text.Format(L"%d", index);

// 显示
MessageBox(Text);
}

MFC_2.8 使用状态栏工具栏的更多相关文章

  1. Material Design Lite,简洁惊艳的前端工具箱。

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,博客地址为http://www.cnblogs.com/jasonnode/ .网站上有对应每一 ...

  2. pyside 添加菜单栏,窗口状态栏,工具栏

    这三个放到一起,个人认为比较有可比性. 另外该写的解释我都记到注释里面了 话不多说,show me the code 菜单栏, # ubuntu16.04触发关联事件不成功,应该是ubantu的全局窗 ...

  3. 孙鑫MFC学习笔记9:状态栏与工具栏编程

    1.在窗口创建之前就应该修改窗口的样式 2.单文档应用程序会把文档名作为应用程序标题,应该去掉FWS_ADDTOTITLE属性,然后修改lpszName为标题 3.在窗口创建完成后,可以通过SetWi ...

  4. [转载]ExtJs4 笔记(12) Ext.toolbar.Toolbar 工具栏、Ext.toolbar.Paging 分页栏、Ext.ux.statusbar.StatusBar 状态栏

    作者:李盼(Lipan)出处:[Lipan] (http://www.cnblogs.com/lipan/)版权声明:本文的版权归作者与博客园共有.转载时须注明本文的详细链接,否则作者将保留追究其法律 ...

  5. MFC菜单、工具栏和状态栏

    菜单:CMenu类 CMenu类的主要成员函数 BOOL LoadMenu(UINT nIDResource); 加载菜单资源,并将其附加到CMenu对象上.参数nIDResource指定了要加载的菜 ...

  6. iOS 状态栏、导航栏、工具栏、选项卡大小

    1.状态栏状态栏一般高度为20像素,在打手机或者显示消息时会放大到40像素高,注意,两倍高度的状态栏在好像只能在纵向的模式下使用.如下图用户可以隐藏状态栏,也可以将状态栏设置为灰色,黑色或者半透明的黑 ...

  7. Qt 学习之路 :菜单栏、工具栏和状态栏

    在之前的<添加动作>一文中,我们已经了解了,Qt 将用户与界面进行交互的元素抽象为一种“动作”,使用QAction类表示.QAction可以添加到菜单上.工具栏上.期间,我们还详细介绍了一 ...

  8. ExtJs4 笔记(12) Ext.toolbar.Toolbar 工具栏、Ext.toolbar.Paging 分页栏、Ext.ux.statusbar.StatusBar 状态栏

    本篇讲解三个工具栏控件.其中Ext.toolbar.Toolbar可以用来放置一些工具类操控按钮和菜单,Ext.toolbar.Paging专门用来控制数据集的分页展示,Ext.ux.statusba ...

  9. MFC之窗体改动工具栏编程状态栏编程程序启动画面

    1窗体外观的改动 (1)改动在CMainFrame::preCreateWindow(CREATESTRUCT& cs) 改动标题:cs.style&=FWS_ADDTOTITLE; ...

随机推荐

  1. &times变成x

    昨天晚上遇到一个很尴尬的bug. 当使用IE浏览器,跳转链接使用&传参的时候第二个参数是times,也就是&times(你有可能看到的是x,实际是&times),结果& ...

  2. 混合式框架-AgileLite

    Agile Lite是一个HTML5移动前端框架.支持jQuery和Zepto双引擎.而且提供与UI无关的独立框架,内置了Flat UI样式和Ratchet样式.同一时候也支持单页模式和多页模式开发. ...

  3. HDU 4920(杭电多校训练#5 1010 题) Matrix multiplication(不知道该挂个什么帽子。。。)

    题目地址:pid=4920">HDU 4920 对这个题简直无语到极点. . .竟然O(n^3)的复杂度能过....方法有三.. 1:进行输入优化和输出优化. . (前提是你的输入优化 ...

  4. Linux/Android——输入子系统input_event传递 (二)【转】

    本文转载自:http://blog.csdn.net/jscese/article/details/42099381 在前文Linux/Android——usb触摸屏驱动 - usbtouchscre ...

  5. 玲珑学院OJ 1023 - Magic boy Bi Luo with his excited math problem 树状数组暴力

    分析:a^b+2(a&b)=a+b  so->a^(-b)+2(a&(-b))=a-b 然后树状数组分类讨论即可 链接:http://www.ifrog.cc/acm/probl ...

  6. T3 最短路 line

    T3 最短路 line [问题描述] 给定一个 n 个点,m 条边的有向图,每个点有一个权值 a[i],表示这个点要到达多少次,1 为起始点,从 1 到 i 的距离为 d[i],请你输出∑a[i]*d ...

  7. 洛谷P1291 [SHOI2002]百事世界杯之旅——期望DP

    题目:https://www.luogu.org/problemnew/show/P1291 水水的经典期望DP: 输出有毒.(其实也很简单啦) 代码如下: #include<iostream& ...

  8. C#面向过程项目之飞行棋

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 飞行棋V ...

  9. 【158】◀▶ Linux-Bash学习

    鸟哥的 Linux 私房菜      Linux 的 26 个命令      Shell 脚本教程      Linux 命令大全 目录——按文件顺序: echo:显示变量内容 printf:格式化输 ...

  10. Python基础 — Matplotlib

    Matplotlib -- 简介         matplotlib是Python优秀的数据可视化第三方库:        matplotlib库的效果可参考官网:http://matplotlib ...