Home | Lehre | Videos | Texte | Vorträge | Software | Person | Impressum, Datenschutzerklärung | Blog
MFCGrundlagen
-
myRedPen und myDarkBrush aus DemoMainFrame als lokale Objekte nach DemoMainFrame::OnPaint(...)
verfrachtet. Um Grafikfehler durch Speichermangel zu verhindern, werden
am Ende von DemoMainFrame::OnPaint(...) statt myRedPen und myDarkBrush
wieder die ursprüngliche Pen und Brush in den Grafikkontext selektiert.
-
Verzögerungsschleife aus DemoApp::InitInstance() gestrichen, weil
man so die Single-Thread-Arbeitsweise nicht demonstrieren kann -- denn
die Event-Bearbeitung startet erst nach InitInstance().
-
MFC statisch gelinkt, damit keine Probleme bei fehlender DLL auftreten.
Damit die EXE-Datei nicht zu groß wird, statt einer Debug-Version
eine Release-Version gebaut. (So gehts: Erstellen/aktive Konfiguration
festlegen, auch Projekt/Einstellungen für diese Konfiguration checken.)
-
in DemoMainFrame::OnPaint(...) die Methode myStatusBar.GetWindowRect(...)
statt myStatusBar.GetClientRect(...) verwendet: Ist kürzer und sauberer.
(ClientRect ist das innere Rechteck, das aber bei diesem Control
mit dem äußeren zusammenfällt -- zumindest derzeit.)
-
in DemoMainFrame::OnSize(...) eleganter die WM_SIZE-Message weitergeleitet,
statt myStatusBar.MoveWindow(...) aufzurufen
-
nur ID-Nummern über 99 verwendet (weil bis 99 intern reserviert)
-
Fenster mit ShowWindow(m_nCmdShow) geöffnet statt mit ShowWindow(SW_SHOW),
um etwaige Aufrufparameter zu berücksichtigen