• MFC学习笔记_关于CSpinButtonCtrl


    CSpinButtonCtrl使用起来比较特殊,使用起来,需要注意一些地方.实际的教程也比较少.为了让后人少走弯路,这里写这篇文章以说明.
    1.添加EDIT控件
    2.添加Spin控件
    如果不是这样的顺序的话,使用ctrl+D改变Tab顺序,使spin紧靠edit后面
    3.在EDIT控件上面设置group属性(特别注意)
    4.在Spin控件上设置
    Auto Buddy 为 true
    Set Buddy Integer 为 true
    Alignment 为 Right Align
    5.添加Edit控件 int 变量 m_nNumK;
    这个时候点击向下应该可以增加数值
    6.在OnInitDialog中添加以下语句
    ((CSpinButtonCtrl *)GetDlgItem(IDC_SPIN1))->SetRange(-100, 100);

    这里在程序中可以写成下面的内容,其中m_timeSpan为Spin控件绑定的变量,m_edtTime为EDIT控件绑定的变量

    m_timeSpan.SetBuddy(&m_edtTime);//将Spin空间和EDIT控件绑定

    m_timeSpan.SetRange(1, 1000);//调整的范围

    这个时候向上的箭头为增加,向下的箭头为减小.

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    设置属性: 
    Auto Buddy(自动取关联控件为TAB顺序前一个)
    Set Buddy Interger(使控件设置关联控件数值,这个值可以是十进制或十六进制)
    Wrap(数值超过范围时循环)
    Arrow keys(当按下向上和向下方向键时,控件可以增加或减小)

    //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

    例子:

    功能,三个spinbutton,设置RGB,改变下面的方块的颜色

    OnInitDialog()
    {
        
        CDialog::OnInitDialog();
        CSpinButtonCtrl *pSpinRed =(CSpinButtonCtrl*)GetDlgItem(IDC_SPIN_RED);//设置红色
        ASSERT(pSpinRed!=NULL);
        
        pSpinRed->SetBuddy(GetDlgItem(IDC_EDIT_RED));
        pSpinRed->SetRange(0,255);
        pSpinRed->SetBase(3);
        pSpinRed->SetPos(128);
    
        CSpinButtonCtrl *pSpinGREEN =(CSpinButtonCtrl*)GetDlgItem(IDC_SPIN_GREEN);//黄色
        ASSERT(pSpinGREEN!=NULL);
        pSpinGREEN->SetBuddy(GetDlgItem(IDC_EDIT_GREEN));
        pSpinGREEN->SetRange(0,255);
        pSpinGREEN->SetBase(1);
        pSpinGREEN->SetPos(128);
    
        CSpinButtonCtrl *pSpinBLUE =(CSpinButtonCtrl*)GetDlgItem(IDC_SPIN_BLUE);//蓝色
        ASSERT(pSpinBLUE!=NULL);
        pSpinBLUE->SetBuddy(GetDlgItem(IDC_EDIT_BLUE));
        pSpinBLUE->SetRange(0,255);
        pSpinBLUE->SetBase(1);
        pSpinBLUE->SetPos(128);
    
        // 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
        //  执行此操作
        SetIcon(m_hIcon, TRUE);            // 设置大图标
        SetIcon(m_hIcon, FALSE);        // 设置小图标
    
        // TODO: 在此添加额外的初始化代码
        
        return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
    }
    

      以上是我平时用spin控件时的一些总结,后面还会不断总结

  • 相关阅读:
    Hibernate--Day01
    Java语言基础之数组
    Java语言基础之方法的设计
    Jmeter-文件目录
    Jmeter-简介及安装
    测试基础-测试策略与类型
    测试基础-软件测试计划
    测试基础-软件测试流程与测试模型
    测试基础-软件测试的环境
    测试基础-软件测试目的与对象
  • 原文地址:https://www.cnblogs.com/pengjun-shanghai/p/5103009.html
Copyright © 2020-2023  润新知