我试图在C ++ MFC中更改CSpinButtonCtrl的方向属性。
默认情况下,我已将orientation属性指定为vertical,但是当我尝试在执行期间将属性样式更改为水平( UDS_HORZ )时,它不起作用...
示例代码
CRect rect;
CWnd *pWnd;
pWnd = GetDlgItem(IDC_SPIN_GRAD_CONTRAST);
pWnd->GetWindowRect(&rect);
((CSpinButtonCtrl*)pWnd)->Create(WS_VISIBLE | UDS_HORZ, rect, pWnd->GetParent(), IDC_SPIN_GRAD_CONTRAST);
它会创建一个水平旋转按钮控件。
我假装做的是找到任何方法来改变风格而不改变先前创建的控件的位置和行为
我会感激任何帮助。
答案 0 :(得分:3)
某些样式的控件只能在创建控件时使用。
AFAIK你必须重新创建控件。
另一方面,我查看了CMFCSpinButtonCtrl
的源代码。使用此功能可以动态更改方向。确保强制重绘控件。
PS:在运行时接缝改变这对我来说是一个奇怪的场景。