zoukankan      html  css  js  c++  java
  • 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()的用法。

  • 相关阅读:
    转 ShowSlow+Yslow页面前端性能测试环境搭建
    ORA-01843 无效的月份
    微信回复图片
    springmvc 监听器getWriter() has already been called for this response问题
    执子之手 与子偕老
    美字
    睡至三更时凡功名都成幻境 想到百年后无少长俱是古人
    oracle regexp_like介绍和例子
    Oracle中如何判断字符串是否全为数字
    ruby for in 循环中改变i的值无效
  • 原文地址:https://www.cnblogs.com/BoyeeStudio/p/214509.html
Copyright © 2011-2022 走看看