Schrift vergrößern
-
Gehts jetzt oder nicht?
Den bool brauchst du doch auch gar nicht, Hauptsache Rot, Geld und Blau sind richtig gefüllt, oder?
Achja, hast du daran gedacht, die z.b. jeweils mit 0 zu initialisieren?
-
neee, funzt nicht
ja, an das initialisieren habe ich auch gedacht
wird eigentlich normalerweise im konstruktor gemachthab es aber mal ausnahmsweise in die OnInitDialig mit reingenommen
-
Ist das Projekt sehr groß oder geheim? Sonst schick es mir mal - eigentlich müßte der kleine Bool nix mehr kaputt machen...
estartu_de@c-plusplus.net
-
jo, is da eigentlich
-
HBRUSH CCAFKWin32XPDlgDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor); if (pWnd->GetDlgCtrlID() == IDC_Kraft) { pDC->SetTextColor(RGB(Rot,Gelb,Blau)); } // TODO: Anderen Pinsel zurückgeben, falls Standard nicht verwendet werden soll return hbr; } void CCAFKWin32XPDlgDlg::OnButton1() { // TODO: Code für die Behandlungsroutine der Steuerelement-Benachrichtigung hier einfügen Rot = 0; Gelb = 0; Blau = 255; Invalidate(); }
So ist es zu Anfang Rot und wenn ich den Knopf gedrückt habe Blau.
Das wolltest du doch, oder?
-
krasse sache
es funktioniert *gg*
dankeschönaber was hat das
Invalidate()
zu bedeuten?
-
neuzeichnen
MSDN sagt:Invalidates the entire client area of CWnd. The client area is marked for painting when the next WM_PAINT message occurs. The region can also be validated before a WM_PAINT message occurs by the ValidateRect or ValidateRgn member function
@Estartu ich war schneller :p
-
Polofreak schrieb:
@Estartu ich war schneller :p
Ist dein gutes Recht, ich hab das nur gewußt, weil ich deinen Beitrag vorhin gelesen habe...
Den Befehl vergesse ich immer wieder.Achja, drauf gekommen bin ich folgendermaßen:
Ich hatte nen Breakpoint in di if gesetzt und da ging es plötzlich.
Sowas zeigt meistens, dass ein Neuzeichnen fehlt.
-
estartu_de schrieb:
...Achja, drauf gekommen bin ich folgendermaßen:
Ich hatte nen Breakpoint in di if gesetzt und da ging es plötzlich.
Sowas zeigt meistens, dass ein Neuzeichnen fehlt.Wow guter Tip! Wenn ich so drüber nachdenk logisch! *merk!*
-
Versteckt war das da schon drin:
estartu_de schrieb:
Genau, das mit dem Breakpoint ist ne gute Möglichkeit.
Besser ist allerdings ein TRACE, weil dann das Programm nicht angehalten wird.Naja, das mit dem Breakpoint und dem Invalidate klappt nur, wenn man keine Mehrschirmlösung hat. Aber die Erklärung würde es kompliziert machen.
-
nachmal ne Frage zu der Schriftgröße
ist es möglich, dass sich das textfeld automatisch ger neuen größe anpasst?
weil so muiss ich dass jetzt selbst ausprobieren wie es hinhaut und wie groß es sein muss
-
Das musst du mit MoveWindow selber machen.
Vielleicht hilft dir ja GetTextExtend (ist ne Funktion von CDC).Zu MoveWindow kann ich dir morgen einen Schnipsel geben - mit der anderen Funktion musst du selber gucken.