• MFC笔记3


    1.

    C6有默认的提示代码功能,但是其默认的快捷键是Ctrl + Space,这一般情况下是切换输入法快捷键,所以,只需重新设置一下快捷键就可以实现提示代码功能,具体设置位置如下:

    工具(T) -> 定制(C) -> 键盘 

    然后在类别中选择编辑,命令选择CompleteWord,编译器选择主要,就可以设下想要的快捷键了。

    2.创建模态对话框

    INT_PTR nRes;             // 用于保存DoModal函数的返回值  
    CTipDlg tipDlg;           // 构造对话框类CTipDlg的实例  
    nRes = tipDlg.DoModal();  // 弹出对话框  
     if (IDCANCEL == nRes)     // 判断对话框退出后返回值是否为       IDCANCEL,如果是则return,否则继续向下执行  
     return;*/  

    创建非模态对话框

    在.h中定义一个窗口指针  CTipDlg *m_tipDlg;

    if(NULL==m_se)
        {
            m_se=new Second();
            m_se->Create(IDD_DIALOG1);
        }
        m_se->ShowWindow(SW_SHOW);

    3.MFC中添加析构函数

    //在头文件中:
    {0
    public: CChatApp(); ... } //中 CChatApp();的后面添加~CChatApp(); //在CPP文件中: CChatApp::CChatApp() { } //函数后面添加 CChatApp::~CChatApp() { }

     4.在滚动条案例中要求重载CExample26Dlg类的OnHScroll函数。具体操作为,在CExample26Dlg类的属性页面(ctrl+w)的工具栏上点“Messages Map”按钮,找到WM_HSCROLL消息,添加响应函数就可以了。

    假设在一个对话框中放入了一个水平滚动条,我们可以在对话框类中重载OnHScroll函数,并在OnHScroll函数中实现滚动功能。
    void CExample26Dlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) 
    {
        // TODO: Add your message handler code here and/or call default
        //获取水平滚动条当前位置
        int pos=m_horiScrollbar.GetScrollPos();
        switch(nSBCode)
        {
            case SB_LINEUP:
                pos-=1;
                break;
            case SB_LINEDOWN:
                pos+=1;
                break;
            case SB_PAGEUP:
                pos-=10;
                break;
            case SB_PAGEDOWN:
                pos+=10;
                break;
            case SB_TOP:
                pos=1;
                break;
            case SB_BOTTOM:
                pos=100;
                break;
            case SB_THUMBPOSITION:
                pos=nPos;
                break;
        /* 下面的m_horiScrollbar.SetScrollPos(pos);执行时会第二次进入此函数,
         * 最终确定滚动块位置,并且会直接到default分支,
         * 所以在此处设置编辑框中显示数值   
         */
            default:
                SetDlgItemInt(IDC_HSCROLL_EDIT1,pos);
                return;
        }
        //设置滚动条位置
        m_horiScrollbar.SetScrollPos(pos);
        CDialog::OnHScroll(nSBCode, nPos, pScrollBar);
    }
  • 相关阅读:
    [Java] 使用@SelectProvider注解实现多表关联查询(全注解,不使用不配置xml)
    c#winform线程间操作UI的五种方法
    C#调用Excel,拷贝图表到其他Excel文档中
    VisualSvn破解、VS2017以上版本的VisualSvn破解
    汉字数据库,汉字大全,JSON格式汉字数据,收录16159个汉字
    golang Logrus简易使用教程
    excel操作-基础篇
    02-PyQt5程序基本结构分析
    QObject信号的操作
    基于webGL三维停车场,可视化管理Demo
  • 原文地址:https://www.cnblogs.com/zhangerxiaoma/p/4986998.html
Copyright © 2020-2023  润新知