c ++ - Skift stil af CSpinButtonCtrl

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg har forsøgt at ændre orienteringsegenskab af CSpinButtonCtrl i C ++ MFC.


Som standard har jeg angivet orienteringsegenskab som vertikal, men når jeg forsøger at ændre egenskabsstilen til vandret ( UDS\_HORZ ) under udførelsen, virker det ikke ...


Prøvekode


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);


Det skaber en horisontal centrifugeringskontrol.


Hvad jeg foregiver at gøre, er at finde en måde at ændre stilen på uden at ændre position og opførsel af den tidligere oprettede kontrol


Jeg vil sætte pris på enhver form for hjælp.

Bedste reference


Nogle stykker af kontroller kan kun bruges, når du opretter kontrollen.


AFAIK du er nødt til at genskabe kontrollen.


På den anden side kiggede jeg på kildekoden til CMFCSpinButtonCtrl. Brug dette gør det muligt at ændre orienteringen dynamisk. Sørg for, at du tvinge til at gentage kontrollen.


PS: Ændring af dette ved runtime sømme for at være et mærkeligt scenario for mig.