Style używane przez MFC
Użyj następujących flag stylu, aby określić wygląd i zachowanie okna lub kontrolki podczas tworzenia odpowiedniego obiektu MFC. W większości przypadków te style są ustawiane w dwStyle
parametrze funkcji klasy Create
.
Style przycisku
Style przycisków mają zastosowanie do CButton Class
obiektów, takich jak przyciski radiowe, pola wyboru i naciśnięcia. Określ kombinację stylów w parametrze dwStyle
.CButton::Create
Aby uzyskać więcej informacji na temat stylów przycisków w systemie Windows, zobacz Style przycisków (Windows).
Typy przycisków
W poniższej tabeli wymieniono typy przycisków. Opcjonalnie możesz wybrać jedną z następujących opcji. Jeśli nie określisz typu przycisku, wartość domyślna to BS_PUSHBUTTON
.
Type | Opis |
---|---|
BS_3STATE |
Tworzy przycisk pola wyboru z trzema stanami: BST_CHECKED , BST_INDETERMINATE i BST_UNCHECKED . Kliknięcie przycisku powoduje wysłanie BN_CLICKED powiadomienia do okna właściciela, ale nie powoduje zmiany stanu przycisku. Domyślnie skojarzony tekst jest wyświetlany po prawej stronie pola wyboru. Aby wyświetlić tekst po lewej stronie pola wyboru, użyj BS_LEFTTEXT stylu lub BS_RIGHTBUTTON . |
BS_AUTO3STATE |
Tworzy przycisk pola wyboru z trzema stanami: BST_CHECKED , BST_INDETERMINATE i BST_UNCHECKED . Kliknięcie przycisku spowoduje wysłanie BN_CLICKED powiadomienia do okna właściciela i zmianę stanu przycisku. Stan przycisku jest cyklem w kolejności BST_CHECKED , BST_INDETERMINATE i BST_UNCHECKED . Domyślnie skojarzony tekst jest wyświetlany po prawej stronie pola wyboru. Aby wyświetlić tekst po lewej stronie pola wyboru, użyj BS_LEFTTEXT stylu lub BS_RIGHTBUTTON . |
BS_AUTOCHECKBOX |
Tworzy przycisk pola wyboru z dwoma stanami: BST_CHECKED i BST_UNCHECKED . Kliknięcie przycisku spowoduje wysłanie BN_CLICKED powiadomienia do okna właściciela i zmianę stanu przycisku. Domyślnie skojarzony tekst jest wyświetlany po prawej stronie pola wyboru. Aby wyświetlić tekst po lewej stronie pola wyboru, użyj BS_LEFTTEXT stylu lub BS_RIGHTBUTTON . |
BS_AUTORADIOBUTTON |
Tworzy przycisk radiowy z dwoma stanami: BST_CHECKED i BST_UNCHECKED . Przyciski radiowe są zwykle używane w grupach, a każda grupa ma maksymalnie jedną zaznaczoną opcję jednocześnie. Kliknięcie przycisku spowoduje wysłanie BN_CLICKED powiadomienia do okna właściciela, ustawienie stanu klikniętego przycisku radiowego na BST_CHECKED , a następnie ustawienie stanów wszystkich innych przycisków radiowych w grupie przycisków na BST_UNCHECKED wartość . Domyślnie skojarzony tekst jest wyświetlany po prawej stronie przycisku radiowego. Aby wyświetlić tekst po lewej stronie przycisku radiowego, użyj BS_LEFTTEXT stylu lub BS_RIGHTBUTTON . |
BS_CHECKBOX |
Tworzy przycisk pola wyboru z dwoma stanami: BST_CHECKED i BST_UNCHECKED . Kliknięcie przycisku powoduje wysłanie BN_CLICKED powiadomienia do okna właściciela, ale nie powoduje zmiany stanu przycisku. Domyślnie skojarzony tekst jest wyświetlany po prawej stronie pola wyboru. Aby wyświetlić tekst po lewej stronie pola wyboru, użyj BS_LEFTTEXT stylu lub BS_RIGHTBUTTON . |
BS_COMMANDLINK |
Tworzy przycisk linku polecenia. Przycisk linku polecenia jest przyciskiem polecenia specyficznym dla systemu Windows Vista, który wyświetla zieloną strzałkę po lewej stronie głównego tekstu i notatkę poniżej głównego tekstu. Tekst notatki można ustawić przy użyciu polecenia CButton::SetNote . |
BS_DEFCOMMANDLINK |
Tworzy przycisk linku polecenia. Przycisk linku polecenia jest przyciskiem polecenia specyficznym dla systemu Windows Vista, który wyświetla zieloną strzałkę po lewej stronie głównego tekstu i notatkę poniżej głównego tekstu. Tekst notatki można ustawić przy użyciu polecenia CButton::SetNote . Jeśli przycisk znajduje się w oknie dialogowym, naciśnięcie BN_CLICKED ENTER wysyła powiadomienie do okna dialogowego nawet wtedy, gdy przycisk nie ma fokusu wejściowego. |
BS_DEFPUSHBUTTON |
Tworzy przycisk polecenia, który ma duże czarne obramowanie. Jeśli przycisk znajduje się w oknie dialogowym, naciśnięcie BN_CLICKED ENTER wysyła powiadomienie do okna dialogowego nawet wtedy, gdy przycisk nie ma fokusu wejściowego. |
BS_DEFSPLITBUTTON |
Tworzy przycisk podziału. Przycisk podziału jest przyciskiem polecenia specyficznym dla systemu Windows Vista, który zawiera przycisk sąsiadujący ze strzałką listy rozwijanej. Po kliknięciu przycisku zostanie wykonane domyślne polecenie. Po kliknięciu strzałki listy rozwijanej zostanie wyświetlone menu dodatkowych poleceń. Jeśli przycisk podziału znajduje się w oknie dialogowym, naciśnięcie BN_CLICKED ENTER wysyła powiadomienie do okna dialogowego nawet wtedy, gdy przycisk nie ma fokusu wejściowego |
BS_GROUPBOX |
Tworzy prostokąt, w którym można grupować inne przyciski. Tekst skojarzony z tym stylem jest wyświetlany w lewym górnym rogu prostokąta. |
BS_OWNERDRAW |
Tworzy przycisk rysowany przez właściciela. Struktura wywołuje metodę DrawItem po zmianie wizualnego aspektu przycisku. Ten styl należy ustawić podczas korzystania z CBitmapButton klasy . |
BS_PUSHBUTTON |
Tworzy przycisk polecenia, który wysyła BN_CLICKED powiadomienie do okna właściciela po kliknięciu przycisku przez użytkownika. |
BS_RADIOBUTTON |
Tworzy przycisk radiowy z dwoma stanami: BST_CHECKED i BST_UNCHECKED . Przyciski radiowe są zwykle używane w grupach, a każda grupa ma maksymalnie jedną zaznaczoną opcję jednocześnie. Kliknięcie przycisku powoduje wysłanie BN_CLICKED powiadomienia do okna właściciela, ale nie powoduje automatycznej zmiany stanu żadnego przycisku w grupie. Domyślnie skojarzony tekst jest wyświetlany po prawej stronie przycisku radiowego. Aby wyświetlić tekst po lewej stronie przycisku radiowego, użyj BS_LEFTTEXT stylu lub BS_RIGHTBUTTON . |
BS_SPLITBUTTON |
Tworzy przycisk podziału. Przycisk podziału jest przyciskiem polecenia specyficznym dla systemu Windows Vista, który zawiera przycisk sąsiadujący ze strzałką listy rozwijanej. Po kliknięciu przycisku zostanie wykonane domyślne polecenie. Po kliknięciu strzałki listy rozwijanej zostanie wyświetlone menu dodatkowych poleceń. |
BS_USERBUTTON |
Przestarzałe, ale zapewniane zgodność z 16-bitowymi wersjami systemu Windows. Zamiast tego należy używać BS_OWNERDRAW aplikacji opartych na systemie Win32. |
Style przycisku radiowego i pola wyboru
W poniższej tabeli wymieniono style specyficzne dla przycisków radiowych i pól wyboru. Te style są ignorowane we wszystkich innych typach przycisków. Opcjonalnie możesz wybrać co najmniej jedną z poniższych opcji.
Styl | opis |
---|---|
BS_LEFTTEXT |
W połączeniu z przyciskiem radiowym lub stylem pola wyboru tekst jest wyświetlany po lewej stronie przycisku radiowego lub pola wyboru. |
BS_RIGHTBUTTON |
W połączeniu z przyciskiem radiowym lub stylem pola wyboru tekst jest wyświetlany po lewej stronie przycisku radiowego lub pola wyboru. Ten styl jest identyczny z stylem BS_LEFTTEXT . |
BS_PUSHLIKE |
Sprawia, że pole wyboru lub przycisk radiowy wygląda i zachowuje się jak przycisk polecenia. Przycisk jest wyświetlany, gdy jego stan to BST_CHECKED , naciśnięty i wygaszony, gdy jego stan to BST_INDETERMINATE , i zwalniany, gdy jego stan to BST_UNCHECKED . |
Style wyrównania tekstu przycisku
W poniższej tabeli wymieniono opcje wyrównania tekstu poziomego i pionowego. Opcjonalnie możesz wybrać jedną z następujących opcji.
Styl | opis |
---|---|
BS_LEFT |
Lewy wyrównuje tekst w prostokątze przycisku. Jeśli jednak przycisk jest polem wyboru lub przyciskiem radiowym, który nie ma BS_RIGHTBUTTON stylu, tekst jest wyrównany po prawej stronie pola wyboru lub przycisku radiowego. |
BS_RIGHT |
Prawy wyrównuje tekst w prostokątze przycisku. Jeśli jednak przycisk jest polem wyboru lub przyciskiem radiowym, który nie ma BS_RIGHTBUTTON stylu, tekst jest wyrównany do prawej strony pola wyboru lub przycisku radiowego. |
BS_CENTER |
Wyśrodkuje tekst w poziomie w prostokątze przycisku. |
BS_TOP |
Umieszcza tekst w górnej części prostokąta przycisku. |
BS_BOTTOM |
Umieszcza tekst w dolnej części prostokąta przycisku. |
BS_VCENTER |
Wyśrodkuje tekst w pionie w prostokątie przycisku. |
Opcje zawartości przycisku
W poniższej tabeli wymieniono opcje wskazujące, co jest wyświetlane w przycisku. Typy przycisków, które wyświetlają tylko tekst, ignorują te style. Opcjonalnie możesz wybrać jedną z następujących opcji.
Styl | opis |
---|---|
BS_BITMAP |
Określa, że przycisk wyświetla mapę bitową. |
BS_ICON |
Określa, że przycisk wyświetla ikonę. |
BS_TEXT |
Określa, że przycisk wyświetla tekst. |
Inne opcje przycisku
W poniższej tabeli wymieniono dodatkowe opcje, których można używać z dowolnym typem przycisku. Opcjonalnie możesz wybrać co najmniej jedną z poniższych opcji.
Styl | opis |
---|---|
BS_FLAT |
Określa, że przycisk jest dwuwymiarowy i nie jest rysowany z domyślnym cieniowaniem, aby utworzyć obraz trójwymiarowy. |
BS_MULTILINE |
Zawija tekst przycisku do wielu wierszy, jeśli ciąg tekstowy jest zbyt długi, aby zmieścić się w jednym wierszu w prostokątze przycisku. |
BS_NOTIFY |
Umożliwia przycisk wysyłania BN_DBLCLK komunikatów z powiadomieniami , BN_KILLFOCUS i BN_SETFOCUS do okna nadrzędnego. Należy pamiętać, że przyciski wysyłają BN_CLICKED powiadomienie niezależnie od tego, czy ten styl jest określony. |
Style pola kombi
Następujące style pola kombi są dostępne w MFC. Aby uzyskać więcej informacji na temat stylów pola kombi w systemie Windows, zobacz Style pól kombi (Windows).
Styl | opis |
---|---|
CBS_AUTOHSCROLL |
Automatycznie przewija tekst w kontrolce edycji po prawej stronie, gdy użytkownik wpisze znak na końcu wiersza. Jeśli ten styl nie jest ustawiony, dozwolony jest tylko tekst pasujący do prostokątnej granicy. |
CBS_DISABLENOSCROLL |
Pole listy zawiera wyłączony pionowy pasek przewijania, gdy pole listy nie zawiera wystarczającej ilości elementów do przewinięcia. Bez tego stylu pasek przewijania jest ukryty, gdy pole listy nie zawiera wystarczającej liczby elementów. |
CBS_DROPDOWN |
Podobnie jak CBS_SIMPLE , z tą różnicą, że pole listy nie jest wyświetlane, chyba że użytkownik wybierze ikonę obok kontrolki edycji. |
CBS_DROPDOWNLIST |
Podobnie jak CBS_DROPDOWN , z tą różnicą, że kontrolka edycji jest zastępowana elementem statycznym tekstowym, który wyświetla bieżące zaznaczenie w polu listy. |
CBS_HASSTRINGS |
Pole kombi owner-draw zawiera elementy składające się z ciągów. Pole kombi przechowuje pamięć i wskaźniki dla ciągów, aby aplikacja mogła użyć GetText funkcji składowej do pobrania tekstu dla określonego elementu. |
CBS_LOWERCASE |
Konwertuje na małe litery we wszystkich tekstach zarówno w polu zaznaczenia, jak i na liście. |
CBS_NOINTEGRALHEIGHT |
Określa, że rozmiar pola kombi jest dokładnie rozmiar określony przez aplikację podczas tworzenia pola kombi. Zwykle system Windows rozmiaruje pole kombi tak, aby pole kombi nie wyświetlało częściowych elementów. |
CBS_OEMCONVERT |
Tekst wprowadzony w kontrolce edycji pola kombi jest konwertowany z zestawu znaków ANSI na zestaw znaków OEM, a następnie z powrotem do ANSI. Zapewnia to właściwą konwersję znaków, gdy aplikacja wywołuje AnsiToOem funkcję systemu Windows, aby przekonwertować ciąg ANSI w polu kombi na znaki OEM. Ten styl jest najbardziej przydatny w przypadku pól kombi zawierających nazwy plików i dotyczy tylko pól kombi utworzonych za pomocą CBS_SIMPLE stylów lub CBS_DROPDOWN . |
CBS_OWNERDRAWFIXED |
Właściciel pola listy jest odpowiedzialny za rysowanie jego zawartości; wszystkie elementy w polu listy są takie same. |
CBS_OWNERDRAWVARIABLE |
Właściciel pola listy jest odpowiedzialny za rysowanie jego zawartości; elementy w polu listy są zmiennej wysokości. |
CBS_SIMPLE |
Pole listy jest wyświetlane przez cały czas. Bieżące zaznaczenie w polu listy jest wyświetlane w kontrolce edycji. |
CBS_SORT |
Automatycznie sortuje ciągi wprowadzone w polu listy. |
CBS_UPPERCASE |
Konwertuje na wielkie litery całego tekstu zarówno w polu zaznaczenia, jak i na liście. |
Edytuj style
Edytuj style mają zastosowanie do CEdit
obiektów klasy . Określ kombinację stylów w parametrze dwStyle
.CEdit::Create
Aby uzyskać więcej informacji na temat edycji stylów kontrolek w systemie Windows, zobacz Edytowanie stylów kontrolek (Windows).
Styl | opis |
---|---|
ES_AUTOHSCROLL |
Automatycznie przewija tekst po prawej stronie o 10 znaków, gdy użytkownik wpisze znak na końcu wiersza. Gdy użytkownik naciśnie ENTER, kontrolka przewija cały tekst z powrotem do pozycji 0. |
ES_AUTOVSCROLL |
Automatycznie przewija tekst w górę o jedną stronę, gdy użytkownik naciska ENTER w ostatnim wierszu. |
ES_CENTER |
Wyśrodkuje tekst w kontrolce edycji jednowierszowej lub wielowierszowej. |
ES_LEFT |
Tekst wyrównany do lewej w kontrolce edycji jednowierszowej lub wielowierszowej. |
ES_LOWERCASE |
Konwertuje wszystkie znaki na małe litery, gdy są wpisywane do kontrolki edycji. |
ES_MULTILINE |
Wyznacza wielowierszową kontrolkę edycji. (Wartość domyślna to pojedynczy wiersz). ES_AUTOVSCROLL Jeśli styl jest określony, kontrolka edycji wyświetla jak najwięcej wierszy i przewija się w pionie, gdy użytkownik naciska ENTER. Jeśli ES_AUTOVSCROLL nie zostanie podana, kontrolka edycji wyświetla jak najwięcej wierszy i sygnałów dźwiękowych, jeśli ENTER jest naciskany, gdy nie można wyświetlić więcej wierszy. ES_AUTOHSCROLL Jeśli styl zostanie określony, kontrolka edycji wielowierszowej automatycznie przewija się w poziomie, gdy daszek przechodzi obok prawej krawędzi kontrolki. Aby uruchomić nowy wiersz, użytkownik musi nacisnąć ENTER. Jeśli ES_AUTOHSCROLL nie zostanie podana, kontrolka automatycznie opakowuje wyrazy na początku następnego wiersza, gdy jest to konieczne. W przypadku naciśnięcia ENTER zostanie również uruchomiony nowy wiersz. Położenie zawijania wyrazów zależy od rozmiaru okna. Jeśli rozmiar okna zmieni się, pozycja zawijania wyrazów zmieni się i tekst zostanie ponownie odtworzona. Kontrolki edycji wielu wierszy mogą zawierać paski przewijania. Kontrolka edycji z paskami przewijania przetwarza własne komunikaty paska przewijania. Edytuj kontrolki bez pasków przewijania zgodnie z opisem powyżej i przetwarzaj wszystkie komunikaty przewijania wysyłane przez okno nadrzędne. |
ES_NOHIDESEL |
Zwykle kontrolka edycji ukrywa zaznaczenie, gdy kontrolka traci fokus wejściowy i odwraca zaznaczenie, gdy kontrolka odbiera fokus wejściowy. Określanie ES_NOHIDESEL tej akcji domyślnej powoduje usunięcie tej akcji domyślnej. |
ES_NUMBER |
Umożliwia wprowadzenie tylko cyfr do kontrolki edycji. |
ES_OEMCONVERT |
Tekst wprowadzony w kontrolce edycji jest konwertowany z zestawu znaków ANSI na zestaw znaków OEM, a następnie z powrotem na ANSI. Zapewnia to właściwą konwersję znaków, gdy aplikacja wywołuje AnsiToOem funkcję systemu Windows, aby przekonwertować ciąg ANSI w kontrolce edycji na znaki OEM. Ten styl jest najbardziej przydatny w przypadku kontrolek edycji zawierających nazwy plików. |
ES_PASSWORD |
Wyświetla wszystkie znaki jako gwiazdkę (*), ponieważ są wpisywane w kontrolce edycji. Aplikacja może użyć funkcji składowej SetPasswordChar , aby zmienić wyświetlany znak. |
ES_READONLY |
Uniemożliwia użytkownikowi wprowadzanie lub edytowanie tekstu w kontrolce edycji. |
ES_RIGHT |
Wyrównuje tekst w prawo w kontrolce edycji jednowierszowej lub wielowierszowej. |
ES_UPPERCASE |
Konwertuje wszystkie znaki na wielkie litery, gdy są wpisywane do kontrolki edycji. |
ES_WANTRETURN |
Określa, że powrót karetki jest wstawiany, gdy użytkownik naciska ENTER podczas wprowadzania tekstu do kontrolki edycji wielu wierszy w oknie dialogowym. Bez tego stylu naciśnięcie ENTER ma taki sam efekt, jak naciśnięcie domyślnego okna dialogowego. Ten styl nie ma wpływu na kontrolkę edycji jednowierszowej. |
Style okien ramowych
Style okien ramowych mają zastosowanie do CFrameWnd
obiektów klasy . Określ kombinację stylów w parametrze dwStyle
.CFrameWnd::Create
Styl | opis |
---|---|
FWS_ADDTOTITLE |
Określa informacje, które mają być dołączane na końcu tytułu okna ramki. Na przykład "Microsoft Draw — Rysunek w dokumencie Document1". Możesz określić ciągi wyświetlane na karcie Ciągi szablonu dokumentu w Kreatorze aplikacji. Jeśli chcesz wyłączyć tę opcję, przesłoń funkcję składową CWnd::PreCreateWindow . |
FWS_PREFIXTITLE |
Wyświetla nazwę dokumentu przed nazwą aplikacji w tytule okna ramowego. Na przykład "Dokument — WordPad". Możesz określić ciągi wyświetlane na karcie Ciągi szablonu dokumentu w Kreatorze aplikacji. Jeśli chcesz wyłączyć tę opcję, przesłoń funkcję składową CWnd::PreCreateWindow . |
FWS_SNAPTOBARS | Określa rozmiar okna ramowego, który otacza pasek sterowania, gdy znajduje się w przestawnym oknie, a nie zadokowany do okna ramowego. Ten styl określa rozmiar okna tak, aby pasował do paska sterowania. |
Style pól listy
Style pól listy mają zastosowanie do CListBox
obiektów klasy . Określ kombinację stylów w parametrze dwStyle
.CListBox::Create
Aby uzyskać więcej informacji na temat stylów pól listy w systemie Windows, zobacz List Box Styles (Windows).
Styl | opis |
---|---|
LBS_DISABLENOSCROLL |
Pole listy zawiera wyłączony pionowy pasek przewijania, gdy pole listy nie zawiera wystarczającej ilości elementów do przewinięcia. Bez tego stylu pasek przewijania jest ukryty, gdy pole listy nie zawiera wystarczającej liczby elementów. |
LBS_EXTENDEDSEL |
Użytkownik może wybrać wiele elementów przy użyciu SHIFT i kombinacji myszy lub specjalnego. |
LBS_HASSTRINGS |
Określa pole listy właściciel-rysowanie, które zawiera elementy składające się z ciągów. Pole listy przechowuje pamięć i wskaźniki dla ciągów, aby aplikacja mogła użyć GetText funkcji składowej do pobrania tekstu dla określonego elementu. |
LBS_MULTICOLUMN |
Określa pole listy wielokolumnowej, które jest przewijane w poziomie. Funkcja SetColumnWidth składowa ustawia szerokość kolumn. |
LBS_MULTIPLESEL |
Wybór ciągu jest przełączany za każdym razem, gdy użytkownik kliknie lub dwukrotnie kliknie ciąg. Można wybrać dowolną liczbę ciągów. |
LBS_NODATA |
Określa pole listy brak danych. Określ ten styl, gdy liczba elementów w polu listy przekroczy tysiąc. Pole listy bez danych musi mieć również LBS_OWNERDRAWFIXED styl, ale nie może mieć LBS_SORT stylu ani LBS_HASSTRINGS .Pole listy bez danych przypomina pole listy narysowanej przez właściciela, z tą różnicą, że nie zawiera żadnych danych ciągów ani map bitowych dla elementu. Polecenia dodawania, wstawiania lub usuwania elementu zawsze ignorują wszystkie dane danego elementu; żądania znalezienia ciągu w polu listy zawsze kończą się niepowodzeniem. System wysyła WM_DRAWITEM komunikat do okna właściciela, gdy element musi zostać narysowany. Element itemID składowa DRAWITEMSTRUCT struktury przekazanej z komunikatem WM_DRAWITEM określa numer wiersza elementu, który ma zostać narysowany. Pole listy brak danych nie wysyła komunikatu WM_DELETEITEM . |
LBS_NOINTEGRALHEIGHT |
Rozmiar pola listy jest dokładnie rozmiarem określonym przez aplikację podczas tworzenia pola listy. Zazwyczaj system Windows rozmiaruje pole listy, tak aby pole listy nie wyświetlało częściowych elementów. |
LBS_NOREDRAW |
Wyświetlanie pola listy nie jest aktualizowane po wprowadzeniu zmian. Ten styl można zmienić w dowolnym momencie, wysyłając WM_SETREDRAW wiadomość. |
LBS_NOSEL |
Określa, że pole listy zawiera elementy, które można wyświetlić, ale nie są zaznaczone. |
LBS_NOTIFY |
Okno nadrzędne odbiera komunikat wejściowy za każdym razem, gdy użytkownik kliknie lub kliknie dwukrotnie ciąg. |
LBS_OWNERDRAWFIXED |
Właściciel pola listy jest odpowiedzialny za rysowanie jego zawartości; elementy w polu listy mają taką samą wysokość. |
LBS_OWNERDRAWVARIABLE |
Właściciel pola listy jest odpowiedzialny za rysowanie jego zawartości; elementy w polu listy są zmiennej wysokości. |
LBS_SORT |
Ciągi w polu listy są sortowane alfabetycznie. |
LBS_STANDARD |
Ciągi w polu listy są sortowane alfabetycznie, a okno nadrzędne otrzymuje komunikat wejściowy za każdym razem, gdy użytkownik kliknie lub dwukrotnie kliknie ciąg. Pole listy zawiera obramowania po wszystkich stronach. |
LBS_USETABSTOPS |
Umożliwia pole listy rozpoznawanie i rozwijanie znaków tabulacji podczas rysowania ciągów. Domyślne pozycje kart to 32 jednostki okien dialogowych. (Jednostka okna dialogowego to odległość pozioma lub pionowa. Jedna pozioma jednostka okna dialogowego jest równa jednej czwartej bieżącej jednostki szerokości bazowej okna dialogowego. Jednostki podstawowe okna dialogowego są obliczane na podstawie wysokości i szerokości bieżącej czcionki systemowej. Funkcja GetDialogBaseUnits systemu Windows zwraca bieżące jednostki podstawowe okna dialogowego w pikselach. Ten styl nie powinien być używany z LBS_OWNERDRAWFIXED . |
LBS_WANTKEYBOARDINPUT |
Właściciel pola listy odbiera WM_VKEYTOITEM lub WM_CHARTOITEM komunikaty za każdym razem, gdy użytkownik naciska, gdy pole listy ma fokus wejściowy. Dzięki temu aplikacja może wykonywać specjalne przetwarzanie danych wejściowych klawiatury. |
Style okna komunikatów
Style okna komunikatów mają zastosowanie do AfxMessageBox
elementów. Określ kombinację stylów w parametrze nType
.AfxMessageBox
Aby uzyskać więcej informacji na temat stylów okien komunikatów w systemie Windows, zobacz MessageBox
Funkcja (Windows).
Dostępne są następujące style okna komunikatów.
Typy pól komunikatów
Styl | opis |
---|---|
MB_ABORTRETRYIGNORE |
Pole komunikatu zawiera trzy przyciski push: Abort, Retry i Ignore. |
MB_OK |
Pole komunikatu zawiera jeden przycisk pushbutton: OK. |
MB_OKCANCEL |
Pole komunikatu zawiera dwa przyciski push: OK i Anuluj. |
MB_RETRYCANCEL |
Pole komunikatu zawiera dwa przyciski push: Ponów próbę i Anuluj. |
MB_YESNO |
Pole komunikatu zawiera dwa przyciski push: Tak i Nie. |
MB_YESNOCANCEL |
Pole komunikatu zawiera trzy przyciski push: Tak, Nie i Anuluj. |
Modalność pola komunikatów
Styl | opis |
---|---|
MB_APPLMODAL |
Użytkownik musi odpowiedzieć na okno komunikatu przed kontynuowaniem pracy w bieżącym oknie. Użytkownik może jednak przejść do okien innych aplikacji i pracować w tych oknach. Wartość domyślna to MB_APPLMODAL , jeśli ani nie zostanie określona, ani MB_SYSTEMMODAL MB_TASKMODAL nie zostanie określona. |
MB_SYSTEMMODAL |
Wszystkie aplikacje są zawieszone, dopóki użytkownik nie odpowie na okno komunikatu. Modalne pola komunikatów są używane do powiadamiania użytkownika o poważnych, potencjalnie szkodliwych błędach, które wymagają natychmiastowej uwagi i powinny być używane oszczędnie. |
MB_TASKMODAL |
Podobnie jak MB_APPLMODAL element , ale nie jest przydatny w aplikacji klasy Microsoft Foundation. Ta flaga jest zarezerwowana dla aplikacji wywołującej lub biblioteki, która nie ma dostępnego uchwytu okna. |
Ikony okna komunikatów
Styl | opis |
---|---|
MB_ICONEXCLAMATION |
Ikona wykrzyknika jest wyświetlana w polu komunikatu. |
MB_ICONINFORMATION |
Ikona składająca się z "I" w okręgu pojawia się w polu komunikatu. |
MB_ICONQUESTION |
W polu komunikatu zostanie wyświetlona ikona znaku zapytania. |
MB_ICONSTOP |
W oknie komunikatu zostanie wyświetlona ikona zatrzymania. |
Przyciski domyślne pola komunikatów
Styl | opis |
---|---|
MB_DEFBUTTON1 |
Pierwszy przycisk jest domyślny. Należy pamiętać, że pierwszy przycisk jest zawsze domyślny, chyba że MB_DEFBUTTON2 określono lub MB_DEFBUTTON3 jest określony. |
MB_DEFBUTTON2 |
Drugi przycisk jest domyślny. |
MB_DEFBUTTON3 |
Trzeci przycisk jest domyślny. |
Style paska przewijania
Style paska przewijania mają zastosowanie do CScrollBar
obiektów klasy . Określ kombinację stylów w parametrze dwStyle
.CScrollBar::Create
Aby uzyskać więcej informacji na temat stylów kontrolek paska przewijania w systemie Windows, zobacz Style kontrolek paska przewijania (Windows).
Styl | opis |
---|---|
SBS_BOTTOMALIGN |
Używany ze stylem SBS_HORZ . Dolna krawędź paska przewijania jest wyrównana do dolnej krawędzi prostokąta określonego w funkcji składowej Create . Pasek przewijania ma domyślną wysokość pasków przewijania systemu. |
SBS_HORZ |
Wyznacza poziomy pasek przewijania. Jeśli nie określono ani SBS_BOTTOMALIGN SBS_TOPALIGN stylu, pasek przewijania ma wysokość, szerokość i położenie podane w funkcji składowej Create . |
SBS_LEFTALIGN |
Używany ze stylem SBS_VERT . Lewa krawędź paska przewijania jest wyrównana do lewej krawędzi prostokąta określonego w funkcji składowej Create . Pasek przewijania ma domyślną szerokość pasków przewijania systemu. |
SBS_RIGHTALIGN |
Używany ze stylem SBS_VERT . Prawa krawędź paska przewijania jest wyrównana do prawej krawędzi prostokąta określonego w funkcji składowej Create . Pasek przewijania ma domyślną szerokość pasków przewijania systemu. |
SBS_SIZEBOX |
Wyznacza pole rozmiaru. Jeśli nie określono ani stylu, pole rozmiaru SBS_SIZEBOXBOTTOMRIGHTALIGN SBS_SIZEBOXTOPLEFTALIGN ma wysokość, szerokość i położenie podane w funkcji składowej Create . |
SBS_SIZEBOXBOTTOMRIGHTALIGN |
Używany ze stylem SBS_SIZEBOX . Prawy dolny róg pola rozmiaru jest wyrównany do prawego dolnego rogu prostokąta określonego w funkcji składowej Create . Pole rozmiaru ma domyślny rozmiar pól rozmiaru systemu. |
SBS_SIZEBOXTOPLEFTALIGN |
Używany ze stylem SBS_SIZEBOX . Lewy górny róg pola rozmiaru jest wyrównany do lewego górnego rogu prostokąta określonego w funkcji składowej Create . Pole rozmiaru ma domyślny rozmiar pól rozmiaru systemu. |
SBS_SIZEGRIP |
Taki sam jak SBS_SIZEBOX , ale z podniesioną krawędzią. |
SBS_TOPALIGN |
Używany ze stylem SBS_HORZ . Górna krawędź paska przewijania jest wyrównana do górnej krawędzi prostokąta określonego w funkcji składowej Create . Pasek przewijania ma domyślną wysokość pasków przewijania systemu. |
SBS_VERT |
Wyznacza pionowy pasek przewijania. Jeśli nie określono ani SBS_RIGHTALIGN SBS_LEFTALIGN stylu, pasek przewijania ma wysokość, szerokość i położenie podane w funkcji składowej Create . |
Style statyczne
Style statyczne mają zastosowanie do CStatic
obiektów klasy . Określ kombinację stylów w parametrze dwStyle
.CStatic::Create
Aby uzyskać więcej informacji na temat statycznych stylów kontrolek w systemie Windows, zobacz Statyczne style kontrolek (Windows).
Styl | opis |
---|---|
SS_BITMAP |
Określa, że mapa bitowa ma być wyświetlana w kontrolce statycznej. Podany tekst jest nazwą mapy bitowej (a nie nazwy pliku) zdefiniowanej gdzie indziej w pliku zasobu. Styl ignoruje parametry nWidth i nHeight; kontrolka automatycznie rozmiaruje się, aby pomieścić mapę bitową. |
SS_BLACKFRAME |
Określa pole z ramką rysowaną z tym samym kolorem co ramki okienne. Wartość domyślna to. |
SS_BLACKRECT |
Określa prostokąt wypełniony kolorem używanym do rysowania ramek okien. Wartość domyślna to. |
SS_CENTER |
Wyznacza prosty prostokąt i wyświetla dany tekst wyśrodkowany w prostokąt. Tekst jest sformatowany przed jego wyświetleniem. Wyrazy, które rozszerzałyby koniec wiersza, są automatycznie owinięte na początku następnego wyśrodkowanego wiersza. |
SS_CENTERIMAGE |
Określa, że jeśli mapa bitowa lub ikona jest mniejsza niż obszar klienta statycznej kontrolki, reszta obszaru klienta jest wypełniona kolorem piksela w lewym górnym rogu mapy bitowej lub ikony. Jeśli kontrolka statyczna zawiera pojedynczy wiersz tekstu, tekst jest wyśrodkowany w pionie w obszarze klienta kontrolki. |
SS_ENDELLIPSIS |
lub SS_PATHELLIPSIS zastępuje część danego ciągu wielokropkiem, jeśli to konieczne, aby wynik mieścił się w określonym prostokątze. Można określić SS_END_ELLIPSIS , aby zastąpić znaki na końcu ciągu lub SS_PATHELLIPSIS zastąpić znaki w środku ciągu. Jeśli ciąg zawiera znaki ukośnika odwrotnego (\), SS_PATHELLIPSIS zachowuje jak najwięcej tekstu po ostatnim ukośniku odwrotnym. |
SS_ENHMETAFILE |
Określa rozszerzony metaplik ma być wyświetlany w kontrolce statycznej. Podany tekst jest nazwą metapliku. Ulepszona kontrolka statyczna metapliku ma stały rozmiar; metaplik jest skalowany w celu dopasowania do obszaru klienta kontrolki statycznej. |
SS_ETCHEDFRAME |
Rysuje ramkę kontrolki statycznej przy użyciu EDGE_ETCHED stylu krawędzi. |
SS_ETCHEDHORZ |
Rysuje górne i dolne krawędzie kontrolki statycznej przy użyciu EDGE_ETCHED stylu krawędzi. |
SS_ETCHEDVERT |
Rysuje lewe i prawe krawędzie kontrolki statycznej przy użyciu EDGE_ETCHED stylu krawędzi. |
SS_GRAYFRAME |
Określa pole z ramką rysowaną z tym samym kolorem co tło ekranu (pulpit). Wartość domyślna to szary. |
SS_GRAYRECT |
Określa prostokąt wypełniony kolorem używanym do wypełnienia tła ekranu. Wartość domyślna to szary. |
SS_ICON |
Wyznacza ikonę wyświetlaną w oknie dialogowym. Podany tekst jest nazwą ikony (nie nazwy pliku) zdefiniowanej gdzie indziej w pliku zasobu. Parametry nWidth i nHeight są ignorowane; ikona automatycznie rozmiaruje się. |
SS_LEFT |
Wyznacza prosty prostokąt i wyświetla tekst z lewej strony w prostokątze. Tekst jest sformatowany przed jego wyświetleniem. Wyrazy, które rozszerzałyby koniec wiersza, są automatycznie opakowane na początku następnego wiersza z lewej strony. |
SS_LEFTNOWORDWRAP |
Wyznacza prosty prostokąt i wyświetla tekst z lewej strony w prostokątze. Karty są rozwinięte, ale wyrazy nie są opakowane. Tekst, który rozszerza koniec wiersza, jest obcięty. |
SS_NOPREFIX |
Jeśli ten styl nie zostanie określony, system Windows zinterpretuje wszelkie znaki ampersand (&) w tekście kontrolki jako znaki prefiksu akceleratora. W tym przypadku znak ampersand jest usuwany, a następny znak w ciągu jest podkreślony. Jeśli kontrolka statyczna ma zawierać tekst, w którym ta funkcja nie jest poszukiwana, SS_NOPREFIX może zostać dodana. Ten styl statycznej kontrolki może być dołączony do dowolnych zdefiniowanych kontrolek statycznych. Możesz połączyć SS_NOPREFIX się z innymi stylami przy użyciu operatora bitowego OR. Jest to najczęściej używane, gdy nazwy plików lub inne ciągi, które mogą zawierać znaki i muszą być wyświetlane w statycznej kontrolce w oknie dialogowym. |
SS_NOTIFY |
Wysyła okno STN_CLICKED nadrzędne , , STN_DBLCLK STN_DISABLE i STN_ENABLE powiadomienia, gdy użytkownik kliknie lub kliknie dwukrotnie kontrolkę. |
SS_OWNERDRAW |
Określa, że właściciel kontrolki statycznej jest odpowiedzialny za rysowanie kontrolki. Okno właściciela otrzymuje WM_DRAWITEM komunikat za każdym razem, gdy kontrolka musi zostać narysowana. |
SS_REALSIZEIMAGE |
Zapobiega zmianie rozmiaru statycznej ikony lub kontrolki mapy bitowej (czyli statycznych kontrolek mających SS_ICON styl lub SS_BITMAP ) podczas ładowania lub narysowania. Jeśli ikona lub mapa bitowa jest większa niż obszar docelowy, obraz zostanie obcięty. |
SS_RIGHT |
Wyznacza prosty prostokąt i wyświetla dany tekst w prawo w prostokątze. Tekst jest sformatowany przed jego wyświetleniem. Wyrazy, które rozszerzałyby koniec wiersza, są automatycznie owinięte na początku następnego wiersza z prawej strony. |
SS_RIGHTJUST |
Określa, że prawy dolny róg kontrolki statycznej z SS_BITMAP stylem lub SS_ICON ma pozostać stały po zmianie rozmiaru kontrolki. Tylko górna i lewa strona są dostosowywane, aby pomieścić nową mapę bitową lub ikonę. |
SS_SIMPLE |
Wyznacza prosty prostokąt i wyświetla pojedynczy wiersz tekstu w lewo w prostokątze. Nie można w żaden sposób skrócić ani zmienić wiersza tekstu. (Okno nadrzędne lub okno dialogowe kontrolki nie może przetworzyć komunikatu WM_CTLCOLOR ). |
SS_SUNKEN |
Rysuje pół zatopione obramowanie wokół statycznej kontrolki. |
SS_USERITEM |
Określa element zdefiniowany przez użytkownika. |
SS_WHITEFRAME |
Określa pole z ramką rysowaną z tym samym kolorem co tło okna. Wartość domyślna to biały. |
SS_WHITERECT |
Określa prostokąt wypełniony kolorem używanym do wypełnienia tła okna. Wartość domyślna to biały. |
SS_WORDELLIPSIS |
Obcina tekst, który nie pasuje i dodaje wielokropek. |
Style okien
Style okien mają zastosowanie do CWnd
obiektów klasy . Określ kombinację stylów w parametrze dwStyle elementu CWnd::Create
lub CWnd::CreateEx
. Aby uzyskać więcej informacji na temat stylów okien w systemie Windows, zobacz Style okien (Windows).
Styl | opis |
---|---|
WS_BORDER |
Tworzy okno z obramowaniem. |
WS_CAPTION |
Tworzy okno z paskiem tytułu (oznacza WS_BORDER styl). Nie można używać z stylem WS_DLGFRAME . |
WS_CHILD |
Tworzy okno podrzędne. Nie można używać z stylem WS_POPUP . |
WS_CHILDWINDOW |
Tak samo jak WS_CHILD styl. |
WS_CLIPCHILDREN |
Wyklucza obszar zajmowany przez okna podrzędne podczas rysowania w oknie nadrzędnym. Używane podczas tworzenia okna nadrzędnego. |
WS_CLIPSIBLINGS |
Klipy okien podrzędnych względem siebie; oznacza to, że gdy określone okno podrzędne otrzymuje komunikat malowania, WS_CLIPSIBLINGS style klipy wszystkie pozostałe nakładające się okna podrzędne poza region okna podrzędnego, które mają zostać zaktualizowane. (Jeśli WS_CLIPSIBLINGS okna podrzędne nie nakładają się na siebie, podczas rysowania w obszarze klienta okna podrzędnego można rysować w obszarze klienta sąsiedniego okna podrzędnego). Do użycia tylko z stylem WS_CHILD . |
WS_DISABLED |
Tworzy okno, które jest początkowo wyłączone. |
WS_DLGFRAME |
Tworzy okno z podwójnym obramowaniem, ale bez tytułu. |
WS_GROUP |
Określa pierwszą kontrolkę grupy kontrolek, w której użytkownik może przejść z jednej kontrolki do następnej za pomocą strzałek. Wszystkie kontrolki zdefiniowane za pomocą WS_GROUP stylu FALSE po pierwszej kontrolce należą do tej samej grupy. Następna kontrolka ze stylem WS_GROUP rozpoczyna następną grupę (czyli jedną grupę kończy się, gdzie rozpoczyna się następny). |
WS_HSCROLL |
Tworzy okno z poziomym paskiem przewijania. |
WS_ICONIC |
Tworzy okno, które jest początkowo zminimalizowane. Tak samo jak WS_MINIMIZE styl. |
WS_MAXIMIZE |
Tworzy okno o maksymalnym rozmiarze. |
WS_MAXIMIZEBOX |
Tworzy okno z przyciskiem Maksymalizuj. |
WS_MINIMIZE |
Tworzy okno, które jest początkowo zminimalizowane. Do użycia tylko z stylem WS_OVERLAPPED . |
WS_MINIMIZEBOX |
Tworzy okno z przyciskiem Minimalizuj. |
WS_OVERLAPPED |
Tworzy nakładające się okno. Nakładające się okno zwykle zawiera podpis i obramowanie. |
WS_OVERLAPPEDWINDOW |
Tworzy nakładające się okno z stylami WS_OVERLAPPED , , WS_CAPTION , WS_SYSMENU WS_THICKFRAME , WS_MINIMIZEBOX i WS_MAXIMIZEBOX . |
WS_POPUP |
Tworzy okno podręczne. Nie można używać z stylem WS_CHILD . |
WS_POPUPWINDOW |
Tworzy okno podręczne z stylami WS_BORDER , WS_POPUP i WS_SYSMENU . Styl WS_CAPTION musi być połączony ze stylem WS_POPUPWINDOW , aby menu Kontrolka było widoczne. |
WS_SIZEBOX |
Tworzy okno z obramowaniem rozmiaru. Tak samo jak WS_THICKFRAME styl. |
WS_SYSMENU |
Tworzy okno z polem Menu sterowania na pasku tytułu. Używane tylko w przypadku okien z paskami tytułu. |
WS_TABSTOP |
Określa jedną z dowolnej liczby kontrolek, za pomocą których użytkownik może poruszać się przy użyciu TAB. TAB przenosi użytkownika do następnej kontrolki określonej przez WS_TABSTOP styl. |
WS_THICKFRAME |
Tworzy okno z grubą ramką, której można użyć do rozmiaru okna. |
WS_TILED |
Tworzy nakładające się okno. Nakładające się okno ma pasek tytułu i obramowanie. Tak samo jak WS_OVERLAPPED styl. |
WS_TILEDWINDOW |
Tworzy nakładające się okno z stylami WS_OVERLAPPED , , WS_CAPTION , WS_SYSMENU WS_THICKFRAME , WS_MINIMIZEBOX i WS_MAXIMIZEBOX . Tak samo jak WS_OVERLAPPEDWINDOW styl. |
WS_VISIBLE |
Tworzy okno, które początkowo jest widoczne. |
WS_VSCROLL |
Tworzy okno z pionowym paskiem przewijania. |
Rozszerzone style okien
Rozszerzone style okien mają zastosowanie do CWnd
obiektów klasy . Określ kombinację stylów w parametrze dwExStyle
.CWnd::CreateEx
Aby uzyskać więcej informacji na temat rozszerzonych stylów okien w systemie Windows, zobacz Rozszerzone style okien (Windows).
Styl | opis |
---|---|
WS_EX_ACCEPTFILES |
Określa, że okno utworzone za pomocą tego stylu akceptuje pliki przeciągania i upuszczania. |
WS_EX_APPWINDOW |
Wymusza okno najwyższego poziomu na pasku zadań, gdy okno jest widoczne. |
WS_EX_CLIENTEDGE |
Określa, że okno ma wygląd 3D — czyli obramowanie ze zatopioną krawędzią. |
WS_EX_CONTEXTHELP |
Zawiera znak zapytania na pasku tytułu okna. Gdy użytkownik kliknie znak zapytania, kursor zmieni się na znak zapytania ze wskaźnikiem. Jeśli użytkownik kliknie okno podrzędne, element podrzędny otrzyma WM_HELP komunikat. |
WS_EX_CONTROLPARENT |
Umożliwia użytkownikowi nawigowanie między oknami podrzędnym okna okna przy użyciu TAB. |
WS_EX_DLGMODALFRAME |
Wyznacza okno z podwójnym obramowaniem, które może (opcjonalnie) zostać utworzone z paskiem tytułu podczas określania WS_CAPTION flagi stylu w parametrze dwStyle . |
WS_EX_LAYERED |
Okno to okno warstwowe. Nie można użyć tego stylu, jeśli okno ma styl CS_OWNDC klasy lub CS_CLASSDC . Jednak system Microsoft Windows 8 obsługuje WS_EX_LAYERED styl dla okien podrzędnych, gdzie poprzednie wersje systemu Windows obsługują go tylko w przypadku okien najwyższego poziomu. |
WS_EX_LEFT |
Nadaje właściwości ogólne okna wyrównane do lewej. Jest to opcja domyślna. |
WS_EX_LEFTSCROLLBAR |
Umieszcza pionowy pasek przewijania po lewej stronie obszaru klienta. |
WS_EX_LTRREADING |
Wyświetla tekst okna z właściwościami kolejności odczytu od lewej do prawej. Jest to opcja domyślna. |
WS_EX_MDICHILD |
Tworzy okno podrzędne MDI. |
WS_EX_NOPARENTNOTIFY |
Określa, że okno podrzędne utworzone za pomocą tego stylu nie będzie wysyłać komunikatu WM_PARENTNOTIFY do okna nadrzędnego po utworzeniu lub zniszczeniu okna podrzędnego. |
WS_EX_OVERLAPPEDWINDOW |
Łączy style WS_EX_CLIENTEDGE i WS_EX_WINDOWEDGE |
WS_EX_PALETTEWINDOW |
Łączy style WS_EX_WINDOWEDGE i .WS_EX_TOPMOST |
WS_EX_RIGHT |
Nadaje okno ogólne właściwości wyrównane do prawej. Zależy to od klasy okna. |
WS_EX_RIGHTSCROLLBAR |
Umieszcza pionowy pasek przewijania (jeśli jest obecny) po prawej stronie obszaru klienta. Jest to opcja domyślna. |
WS_EX_RTLREADING |
Wyświetla tekst okna przy użyciu właściwości kolejności odczytu od prawej do lewej. |
WS_EX_STATICEDGE |
Tworzy okno z trójwymiarowym stylem obramowania, które ma być używane dla elementów, które nie akceptują danych wejściowych użytkownika. |
WS_EX_TOOLWINDOW |
Tworzy okno narzędzia, które jest oknem przeznaczonym do użycia jako przestawny pasek narzędzi. Okno narzędzia ma pasek tytułu krótszy niż normalny pasek tytułu, a tytuł okna jest rysowany przy użyciu mniejszej czcionki. Okno narzędzia nie jest wyświetlane na pasku zadań lub w oknie wyświetlanym po naciśnięciu ALT+TAB przez użytkownika. |
WS_EX_TOPMOST |
Określa, że okno utworzone za pomocą tego stylu powinno zostać umieszczone powyżej wszystkich nietopernych okien i pozostać nad nimi nawet wtedy, gdy okno jest dezaktywowane. Aplikacja może użyć funkcji składowej SetWindowPos , aby dodać lub usunąć ten atrybut. |
WS_EX_TRANSPARENT |
Określa, że okno utworzone za pomocą tego stylu ma być przezroczyste. Oznacza to, że wszystkie okna, które znajdują się pod oknem, nie są zasłonięte przez okno. Okno utworzone za pomocą tego stylu odbiera WM_PAINT komunikaty dopiero po zaktualizowaniu wszystkich okien równorzędnych. |
WS_EX_WINDOWEDGE |
Określa, że okno ma obramowanie z podniesioną krawędzią. |
Zobacz też
Omówienie klasy MFC
CWnd::Create
CWnd::CreateEx
CEdit::Create
CScrollBar::Create
CStatic::Create
AfxMessageBox
CreateWindow
CreateWindowEx
Style przycisków (Windows)
Style pola kombi (Windows)
Edytowanie stylów kontrolek (Windows)
Style pola listy (Windows)
MessageBox
Funkcja (Windows)
Style kontrolek paska przewijania (Windows)
Statyczne style kontrolek (Windows)
Style okien (Windows)
Rozszerzone style okien (Windows)