Windows Mobile学习笔记_关于CSpinButtonCtrl

    这几日都在看Windows mobile编程和MFC,毕业设计需要,自己的工作进度一直比较慢,比较汗颜...

    以下是使用CSpinButtonCtrl的使用方法:

    转:http://www.cnblogs.com/tomato-potato/articles/1202637.html

    ==================================================================

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);
这个时候向上的箭头为增加,向下的箭头为减小.

=======================================================================================

在看书的时候发现教材写的很不完整,导致我Auto Buddy属性没有设置为true,结果运行的时候点了半天edit控件的内容都是空白的...

以下是我的代码,个人比较笨,手动设置buddy...

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

Code
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
}

 

描绘矩形

 

Code

 

最终效果:

      

posted @ 2009-03-13 13:02  Scorpio_逸尘  阅读(2105)  评论(0编辑  收藏  举报