zoukankan      html  css  js  c++  java
  • MFC_2.8 使用状态栏工具栏

    使用状态栏工具栏

    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);
    }

     

  • 相关阅读:
    JSTL学习总结
    Spring 3 MVC: Create Hello World Application In Spring 3.0 MVC(reprint)
    如何查询端口号被哪个程序占用?
    php 共享内存
    php 消息队列
    php 快速fork出指定个子进程
    批量 kill mysql 中运行时间长的sql
    socket发送http请求
    TCP/IP、Http、Socket的区别
    文本协议和二进制协议
  • 原文地址:https://www.cnblogs.com/ltyandy/p/10928350.html
Copyright © 2011-2022 走看看