CComboBox und MoveWindow
-
Hallo Leute!
Bin zum ersten Mal da und drum ein herzliches Hallo an alle.Zu meinem Problem.
Ich habe eine Software geschrieben die mit dem Assistenten erstellt worden ist. Als Basisklasse für meine View-Klasse habe ich die CFormView geählt. Auf dem Form habe ich ein paar Elemente wie CListCtrl, CEdit und auch ein CComboBox. So damit beim starten des Programms das Programmfenster nach was aussieht hole ich in OnDraw der View Klasse einen Handler auf jedes Element im Form und passe es an den Bildschirm an. Funktioniert so eigentlich ganz gut, bis auf CComboBox. Das Flimmert, wenn das Fenster Maximiert ist. Verkleinere ich das Hauptfenster ist das Flimmern weg und das Kontroll benutzbar. Maximiere ich dann das Fenster wieder, sieht man nur das leere Form im Fenster und mein CComboBox flimmern. Interessanterweise reagiert es auf Klicks, schaut aber ein wenig sch.. aus.
Jetzt designe ich mal mein Programm um und benutze CListBox stattdesen, aber es würde mich schon interessieren was oder warum das Verhalten so ist.
Mir ist auch klar das meine Lösung nicht gerade Professionel ist, aber ich bin halt auhc noch anfänger, und in dieser Beziehung würde ich mich auch freuen wenn mir jemand mal einen Tipp geben kann wie man Elemente und Fenster an einen Bildschirm anpassen kann.Vielen Dank Leute und einen schönen Tag noch.
//Funktioniert pStatic = (CStatic*) GetDlgItem(IDC_STATIC_FUEL_DURCHSCHNITT_GESAMT); pStatic->MoveWindow(clientRec.left +580, clientRec.top +411, 200, 25); pDate = (CDateTimeCtrl*) GetDlgItem(IDC_SRP_DATE); pDate->MoveWindow(clientRec.left + 10, clientRec.top +470, 130, 25); // Funktioniert nicht CComboBox *pCombo = (CComboBox*) GetDlgItem(IDC_SRP_COMBO); pCombo->MoveWindow(150, 470, 100, 60);
-
Hallo,
meiner Meinung nach is die OnDraw-Methode nicht der geeignete Ort für Deine
Control-Verschieberei.Willst Du Die Position nur beim Initialisieren anpassen, würde ich Dir
OnInitialUpdate empfehlen.Willst Du auf Grössenänderungen der Form reagieren, so solltest Du OnSize in
Erwägung ziehen.MfG.
-
Danke Wonko!
OnSize ist scheinbar genau das was ich suche. Werd mich mal rumspielen damit.
Vielen Dank noch mal
Wolf