我正在尝试将CSpinButtonCtrl绘制为Windows 7中编辑框的伙伴。当我的CEdit窗口高达12个对话框单位时,旋转按钮的缩放非常严重,顶部边框被剪掉。
这看起来很难看。我怎样才能解决这个问题,或者我必须将CEdit控件限制为14个对话框单位?
我的控件如此声明:
EDITTEXT IDC_LOWER_EDIT,51,20,63,12,ES_MULTILINE | ES_WANTRETURN,WS_EX_RIGHT
CONTROL "",IDC_LOWER_SPIN,"msctls_updown32",UDS_SETBUDDYINT | UDS_ALIGNRIGHT | UDS_AUTOBUDDY | UDS_ARROWKEYS | UDS_NOTHOUSANDS,104,17,11,12
我尝试使用MoveWindow进行大小调整,但这没有用。有什么想法吗?
答案 0 :(得分:4)
我找到了更改宽度的代码
CWnd* pWnd = GetDlgItem( IDC_SPIN1 );
CRect rect;
pWnd->GetWindowRect( &rect );
ScreenToClient( &rect );
rect.right += 5 ; // make 5 pixels wider
pWnd->MoveWindow(&rect) ;
将其放入OnInitDialog()
。
答案 1 :(得分:2)
我想我会选择#2 - 你是否因屏幕空间而受到挤压?
答案 2 :(得分:0)
另一种选择是:将其保持未连接状态(删除UDS ALIGN RIGHT)并将其放在编辑控件旁边。