• VC++学习笔记(1)


    自建工具栏时,要想在菜单栏中控制其显示或隐藏,可有两种方法,如下的代码:
    (1)
    void CMainFrame::OnViewNewTool()
    {
        if(m_newToolBar.isWindowVisible())
        {
     m_newToolBar.ShowWindow(SW_HIDE);
        }
        else
        {
     m_newToolBar.ShowWindow(SW_SHOW);
        }
      RecalLayout();
      DockControlBar(&m_newToolBar);
    }

    (2)
    ShowControlBar(&m_newToolBar,!m_newToolBar.isWindowVisible(),FALSE);

    给菜单项加上复选标记的方法:
    1。在菜单项上点右键,加一个消息响应函数:UPDATE_COMMAND_UI
    添加代码如下:
    void CMainFrame::OnUpdateViewNewtool(CCmdUI *pCmdUI)

     pCmdUI->SetCheck(m_newToolBar.isWindowVisible());
    }

    3.对状态栏编程。
    首先在String Table 中添加字符串ID,然后在CMainFrame中找到indicators[]数组,在其中加入刚才添加的字符串的
    ID。
    4。对时间编程。
    CTime t=CTime::GetCurrentTime();
    CString str=t.Format("%H:%M:%S");

    设置状态栏中右边指示器中面板的内容:SetPaneText().
    获得指示器中某个ID的index,可用CommnandToIndex().
    改变指示器中某个面板的宽度:SetPaneInfo(int index,UINT nID,UINT nStyle,int cxWidth);
    获得一个字符串的长度:
    CClientDC dc(this);
    CSize sz=dc.GetTextExtent(str);

    5.进度栏的编程。
    CProgressCtrl::CProgressCtrl()
    (1)构造一个CProgressCtrl对象。
    CProgressCtrl m_cprc
    (2)在onCreate中去创建一个进度栏。
    m_cprc.Create(WS_CHILD|WS_VISIBLE)
    让进度动起来:
    SetStep().
    SetRange().设置范围。

    6.自定义消的方法:
    (1)。在头文件中定义一个消息ID。为防止和系统消息发生冲突,用下面的方法。
    如:#define UM_PROGRESS WM_USER+1
    (2)。作消息响应函数原型的声明:
    afx msg void OnPress();
    (3).作消息映射:
    ON_MESSAGE(UM_PROGRESS,OnProgress)
    (4).消息响应函数的实现。
    CMainFrame::OnProgress()
    {

    }

    可以在某个函数中发送这样一个消息:SendMessage(UM_PROGRESS);
    或PostMessage(UM_PROGRESS);
    ** 移动窗口到指定的位置:SetWindowPos() (功能多些,可以设顶层窗口)和MoveWindow()(方便些)

    CFrameWnd::SetMessageText()的用法。
    CFrameWnd::GetMessageBar()的用法。
    CWnd::GetDescendantWindow()的用法。

  • 相关阅读:
    使用 libevent 和 libev 提高网络应用性能
    在PHP中PDO解决中文乱码问题的一些补充
    apache重写规则详解
    Apache的配置
    正则表达式30分钟入门教程
    LVS+keepalived搭建负载均衡
    php判断终端是手机还是电脑访问网站代码
    nginx 502 bad gateway
    算法复习-深度优先遍历和回溯法的关系
    分支限界法和回溯法对比
  • 原文地址:https://www.cnblogs.com/BoyeeStudio/p/214509.html
Copyright © 2020-2023  润新知