Widoki formularzy (MFC)
Formularze można dodawać do dowolnej aplikacji Visual C++, która obsługuje biblioteki MFC, w tym aplikację opartą na formularzach (taką, której klasa widoku pochodzi z CFormView
klasy ). Jeśli początkowo nie utworzono aplikacji do obsługi formularzy, program Visual C++ doda tę obsługę podczas wstawiania nowego formularza. W aplikacji SDI lub MDI, która implementuje domyślną architekturę dokumentu/widoku, gdy użytkownik wybierze nowe polecenie (domyślnie w menu Plik), Visual C++ monituje użytkownika o wybranie spośród dostępnych formularzy.
W przypadku aplikacji SDI, gdy użytkownik wybierze nowe polecenie, bieżące wystąpienie formularza będzie nadal działać, ale nowe wystąpienie aplikacji z wybranym formularzem zostanie utworzone, jeśli nie zostanie znaleziony. W aplikacji MDI bieżące wystąpienie formularza będzie nadal działać, gdy użytkownik wybierze nowe polecenie.
Uwaga
Formularz można wstawić do aplikacji opartej na oknach dialogowych (na podstawie klasy okna dialogowego i jednej, w której nie zaimplementowano żadnej klasy CDialog
widoku). Jednak bez architektury dokumentu/widoku program Visual C++ nie implementuje automatycznie funkcji File>New. Musisz utworzyć sposób wyświetlania dodatkowych formularzy, na przykład przez zaimplementowanie okna dialogowego z kartą z różnymi stronami właściwości.
Podczas wstawiania nowego formularza do aplikacji program Visual C++ wykonuje następujące czynności:
Tworzy klasę na podstawie jednej z wybranych klas w stylu formularza (
CFormView
,CRecordView
,CDaoRecordView
lubCDialog
).Tworzy zasób okna dialogowego z odpowiednimi stylami (lub możesz użyć istniejącego zasobu okna dialogowego, który nie został jeszcze skojarzony z klasą).
Jeśli wybierzesz istniejący zasób okna dialogowego, może być konieczne ustawienie tych stylów przy użyciu strony Właściwości okna dialogowego. Style okna dialogowego muszą obejmować:
WS_CHILD=Włączone
WS_BORDER=Wyłączone
WS_VISIBLE=Wyłączone
WS_CAPTION=Wyłączone
W przypadku aplikacji opartych na architekturze dokumentu/widoku polecenie Nowy formularz (kliknij prawym przyciskiem myszy w widoku klasy) również:
Tworzy klasę opartą
CDocument
naZamiast tworzyć nową klasę, możesz użyć dowolnej istniejącej
CDocument
klasy opartej na projekcie.Generuje szablon dokumentu (pochodzący z
CDocument
programu ) z zasobami ciągów, menu i ikon.Możesz również utworzyć nową klasę, na której ma zostać utworzony szablon.
Dodaje wywołanie metody w
AddDocumentTemplate
kodzie aplikacjiInitInstance
.Program Visual C++ dodaje ten kod dla każdego utworzonego nowego formularza, który dodaje formularz do listy dostępnych formularzy, gdy użytkownik wybierze nowe polecenie. Ten kod zawiera skojarzony identyfikator zasobu formularza oraz nazwy skojarzonych klas dokumentów, widoków i ramek, które razem tworzą nowy obiekt formularza.
Szablony dokumentów służą jako połączenie między dokumentami, oknami ramek i widokami. W przypadku pojedynczego dokumentu można utworzyć wiele szablonów.
Aby uzyskać więcej informacji, zobacz: