问个很弱的问题,请大家不要笑。这个控件我在VC里怎么没找到,怎么用啊?
大概像下面这样
______________________
|__________________0.00|上下箭头|
就是前面像是一个文本框,里面有数字0.00,后面是上下箭头,可以调数字的。不知道我说明白没有?
大概像下面这样
______________________
|__________________0.00|上下箭头|
就是前面像是一个文本框,里面有数字0.00,后面是上下箭头,可以调数字的。不知道我说明白没有?
http://www.softist.com/software/multituner/multituner_chn.htm我把这部分程序传上来。
void CDlgMetronom::CreateSpinCtrl()
{
DWORD dwStyles=0;
dwStyles |= UDS_ALIGNRIGHT;
dwStyles |= UDS_ARROWKEYS;
dwStyles |= UDS_AUTOBUDDY;
dwStyles |= UDS_SETBUDDYINT;
CWnd* pEdit = GetDlgItem( IDC_EDIT_TEMPO );
pEdit->SetWindowPos( &wndBottom, m_EditRect.left, m_EditRect.top,
m_EditRect.Width(), m_EditRect.Height(), SWP_SHOWWINDOW ); CRect rect = m_EditRect;
rect.left = rect.right+4;
rect.right = rect.left+10; m_Spin.Create( WS_VISIBLE|WS_CHILD|dwStyles, rect, this, IDC_SPIN_TEMPO );
m_Spin.SetRange( 30, 300 ); // UDM_SETRANGE
m_Spin.SetPos(120); TCHAR buf[32];
int pos = m_Spin.GetPos();
wsprintf( buf, _T("%d"), pos );
CWnd* pWnd = m_Spin.GetBuddy();
if (pWnd != NULL && HIWORD(pos) != 1)
pWnd->SetWindowText( buf );
}
BOOL CDlgMetronom::OnInitDialog()
{
CDialog::OnInitDialog();
CWnd* pEdit = GetDlgItem( IDC_EDIT_TEMPO );
pEdit->GetWindowRect( &m_EditRect );
ScreenToClient( &m_EditRect );
CreateSpinCtrl();
}
注意,
1)#2楼说的很重要
2)CSpinButtonCtrl m_Spin; 用手动敲到程序里,不要用AFX_DATA方法生成。