| ||||||||||||||||||||||||||||||||
| Jedes MFC Programm muss eine von CWinApp abgeleitete Klasse deklarieren und ein entsprechendes globales Objekt definieren. |
Dieses globale Objekt wird, wie bei globalen C++ Objekten üblich, noch vor dem Aufruf von WinMain(...) erstellt und initialisiert (Konstruktoraufruf!).
Die Klasse CWinApp besitzt eine größere Anzahl von Eigenschaften von denen nur die vorläufig wichtigsten in der nachfolgenden Aufstellung enthalten sind:
Einige Eigenschaften der Klassen CWinApp |
|
|---|---|
Daten |
|
| m_pszAppName | Name der Anwendung. |
| m_pMainWnd | Zeiger vom Typ CWnd* auf das Hauptfenster der Anwendung. |
| m_hInstance | Handle der Instanz, wird von WinMain(...) geliefert. |
| m_lpCmdLine | Zeiger auf Befehlszeile, wird von WinMain(...) geliefert. |
| m_nCmdShow | Zustand in dem das Fenster dargestellt werden soll, wird von WinMain(...) geliefert. |
Methoden |
|
| LoadCursor(...) bzw. LoadStandardCursor(...) |
Methoden zum Laden eines Ressourcen- bzw. Standard-Cursors. |
| LoadIcon(...) bzw. LoadStandardIcon(...) |
Methoden zum Laden eines Ressourcen- bzw. Standard-Icons. |
| InitInstance(...) | Initialisierung der Instanz, hier wird i.d.R. das Hauptfenster erstellt. |
| Run(...) | Dies ist die Nachrichtenschleife. |
| ExitInstance(...) | Wird beim Beenden der Instanz aufgerufen, ist das Gegenstück zu InitInstance(...). |
| OnIdle(...) | Wird ausgeführt wenn im Augenblick keine Nachricht zu verarbeiten ist. |
| PreTranslateMessage(...) | Erlaubt die Vorverarbeitung von Nachrichten. |
Bei den Daten sollten Ihnen alle Eigenschaften bis auf m_pszAppName und m_pMainWnd bekannt vorkommen. m_pszAppName enthält den Namen der Anwendung als String. Als Anwendungsname wird von der MFC der Name des Projektes ohne die Pfadangabe eingesetzt. Haben Sie also ein Projekt mit dem Namen DoIt.dsw, so zeigt m_pszAppName auf den String "DoIt". m_pMainWnd ist der Zeiger auf das Hauptfenster der Anwendung. Über diesen Zeiger kann das Anwendungsobjekt auf das Hauptfenster zugreifen.
Die einzelnen Methoden werden später im Kurs noch dort behandelt dort wo sie benötigt werden.
|
|