Klasa CSpinButtonCtrl
Udostępnia funkcje kontrolki przycisków pokrętła systemu Windows.
Składnia
class CSpinButtonCtrl : public CWnd
Elementy członkowskie
Konstruktory publiczne
Nazwa/nazwisko | opis |
---|---|
CSpinButtonCtrl::CSpinButtonCtrl |
CSpinButtonCtrl Tworzy obiekt. |
Metody publiczne
Nazwa/nazwisko | opis |
---|---|
CSpinButtonCtrl::Create | Tworzy kontrolkę przycisku pokrętła i dołącza ją do CSpinButtonCtrl obiektu. |
CSpinButtonCtrl::CreateEx | Tworzy kontrolkę przycisku pokrętła z określonymi stylami rozszerzonymi systemu Windows i dołącza go do CSpinButtonCtrl obiektu. |
CSpinButtonCtrl::GetAccel | Pobiera informacje o przyspieszaniach dla kontrolki przycisku pokrętła. |
CSpinButtonCtrl::GetBase | Pobiera bieżącą bazę dla kontrolki przycisku pokrętła. |
CSpinButtonCtrl::GetBuddy | Pobiera wskaźnik do bieżącego okna kumpla. |
CSpinButtonCtrl::GetPos | Pobiera bieżącą pozycję kontrolki przycisku pokrętła. |
CSpinButtonCtrl::GetRange | Pobiera górne i dolne limity (zakres) dla kontrolki przycisku pokrętła. |
CSpinButtonCtrl::SetAccel | Ustawia przyspieszenie dla kontrolki przycisku pokrętła. |
CSpinButtonCtrl::SetBase | Ustawia podstawę kontrolki przycisku pokrętła. |
CSpinButtonCtrl::SetBuddy | Ustawia okno kumpla dla kontrolki przycisku pokrętła. |
CSpinButtonCtrl::SetPos | Ustawia bieżące położenie kontrolki. |
CSpinButtonCtrl::SetRange | Ustawia górne i dolne limity (zakres) dla kontrolki przycisku pokrętła. |
Uwagi
"Kontrolka przycisku pokrętła" (znana również jako kontrolka w górę w dół) to para przycisków strzałek, które użytkownik może kliknąć, aby zwiększać lub dekrementować wartość, taką jak położenie przewijania lub liczba wyświetlana w kontrolce towarzyszącej. Wartość skojarzona z kontrolką przycisku pokrętła nosi nazwę bieżącej pozycji. Kontrolka przycisku pokrętła jest najczęściej używana z kontrolką towarzysza, nazywaną "oknem kumpla".
Ta kontrolka CSpinButtonCtrl
(i dlatego klasa) jest dostępna tylko dla programów działających w systemach Windows 95/98 i Windows NT w wersji 3.51 lub nowszej.
Dla użytkownika kontrolka przycisku pokrętła i jego okna kumpla często wyglądają jak jedna kontrolka. Możesz określić, że kontrolka przycisku pokrętła automatycznie umieszcza się obok okna kumpla i automatycznie ustawia podpis okna kumpla na jego bieżące położenie. Możesz użyć kontrolki przycisku pokrętła z kontrolką edycji, aby monitować użytkownika o dane wejściowe liczbowe.
Kliknięcie strzałki w górę powoduje przeniesienie bieżącej pozycji w kierunku maksymalnej, a kliknięcie strzałki w dół powoduje przeniesienie bieżącej pozycji w kierunku minimum. Domyślnie wartość minimalna to 100, a wartość maksymalna to 0. Za każdym razem, gdy ustawienie minimalne jest większe niż ustawienie maksymalne (na przykład gdy są używane ustawienia domyślne), kliknięcie strzałki w górę zmniejsza wartość pozycji i kliknięcie strzałki w dół powoduje jej zwiększenie.
Kontrolka przycisku pokrętła bez okna kumpla działa jako rodzaj uproszczonego paska przewijania. Na przykład kontrolka karty czasami wyświetla kontrolkę przycisku pokrętła, aby umożliwić użytkownikowi przewijanie dodatkowych kart do widoku.
Aby uzyskać więcej informacji na temat korzystania z programu CSpinButtonCtrl
, zobacz Controls and Using CSpinButtonCtrl (Kontrolki i Używanie CSpinButtonCtrl).
Hierarchia dziedziczenia
CSpinButtonCtrl
Wymagania
Nagłówek: afxcmn.h
CSpinButtonCtrl::Create
Tworzy kontrolkę przycisku pokrętła i dołącza ją do CSpinButtonCtrl
obiektu.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametry
dwStyle
Określa styl kontrolki przycisku pokrętła. Zastosuj dowolną kombinację stylów kontrolek przycisku pokrętła do kontrolki. Te style opisano w sekcji Style kontrolek w górę w dół w zestawie Windows SDK.
Rect
Określa rozmiar i położenie kontrolki przycisku pokrętła. Może to być obiekt CRect lub struktura RECT
pParentWnd
Wskaźnik do okna nadrzędnego kontrolki przycisku pokrętła, zwykle CDialog
. Nie może mieć wartości NULL.
Nid
Określa identyfikator kontrolki przycisku pokrętła.
Wartość zwracana
Niezerowe, jeśli inicjowanie zakończyło się pomyślnie; w przeciwnym razie 0.
Uwagi
Utworzysz CSpinButtonCtrl
obiekt w dwóch krokach Najpierw, wywołaj konstruktor, a następnie wywołaj Create
metodę , która tworzy kontrolkę przycisku pokrętła i dołącza ją do CSpinButtonCtrl
obiektu.
Aby utworzyć kontrolkę przycisku pokrętła z rozszerzonymi stylami okien, wywołaj metodę CSpinButtonCtrl::CreateEx zamiast Create
.
CSpinButtonCtrl::CreateEx
Tworzy kontrolkę (okno podrzędne) i kojarzy ją z obiektem CSpinButtonCtrl
.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametry
dwExStyle
Określa rozszerzony styl tworzonej kontrolki. Aby uzyskać listę rozszerzonych stylów okien, zobacz parametr dwExStyle dla polecenia CreateWindowEx w zestawie Windows SDK.
dwStyle
Określa styl kontrolki przycisku pokrętła. Zastosuj dowolną kombinację stylów kontrolek przycisku pokrętła do kontrolki. Te style opisano w sekcji Style kontrolek w górę w dół w zestawie Windows SDK.
Rect
Odwołanie do struktury RECT opisującej rozmiar i położenie okna do utworzenia w współrzędnych klienta pParentWnd.
pParentWnd
Wskaźnik do okna, który jest elementem nadrzędnym kontrolki.
Nid
Identyfikator okna podrzędnego kontrolki.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.
Uwagi
Użyj CreateEx
zamiast pozycji Utwórz , aby zastosować rozszerzone style systemu Windows określone w WS_EX_ rozszerzonego stylu systemu Windows.
CSpinButtonCtrl::CSpinButtonCtrl
CSpinButtonCtrl
Tworzy obiekt.
CSpinButtonCtrl();
CSpinButtonCtrl::GetAccel
Pobiera informacje o przyspieszaniach dla kontrolki przycisku pokrętła.
UINT GetAccel(
int nAccel,
UDACCEL* pAccel) const;
Parametry
nAccel
Liczba elementów w tablicy określonej przez element pAccel.
pAccel
Wskaźnik do tablicy struktur UDACCEL , które odbierają informacje o przyspieszaniu.
Wartość zwracana
Liczba pobranych struktur akceleratorów.
CSpinButtonCtrl::GetBase
Pobiera bieżącą bazę dla kontrolki przycisku pokrętła.
UINT GetBase() const;
Wartość zwracana
Bieżąca wartość podstawowa.
CSpinButtonCtrl::GetBuddy
Pobiera wskaźnik do bieżącego okna kumpla.
CWnd* GetBuddy() const;
Wartość zwracana
Wskaźnik do bieżącego okna kumpla.
CSpinButtonCtrl::GetPos
Pobiera bieżącą pozycję kontrolki przycisku pokrętła.
int GetPos() const; int GetPos32(LPBOOL lpbError = NULL) const;
Parametry
lpbError
Wskaźnik do wartości logicznej ustawionej na zero, jeśli wartość została pomyślnie pobrana lub niezerowa, jeśli wystąpi błąd. Jeśli ten parametr ma wartość NULL, błędy nie są zgłaszane.
Wartość zwracana
Pierwsza wersja zwraca 16-bitową bieżącą pozycję w słowie o niskiej kolejności. Wyraz o wysokiej kolejności jest niezerowy, jeśli wystąpił błąd.
Druga wersja zwraca pozycję 32-bitową.
Uwagi
Gdy przetwarza zwracaną wartość, kontrolka aktualizuje jego bieżące położenie na podstawie podpisu okna kumpla. Kontrolka zwraca błąd, jeśli nie ma okna kumpla lub jeśli podpis określa nieprawidłową lub out-of-range wartość.
CSpinButtonCtrl::GetRange
Pobiera górne i dolne limity (zakres) dla kontrolki przycisku pokrętła.
DWORD GetRange() const;
void GetRange(
int& lower,
int& upper) const;
void GetRange32(
int& lower,
int &upper) const;
Parametry
dolny
Odwołanie do liczby całkowitej, która otrzymuje niższy limit dla kontrolki.
górny
Odwołanie do liczby całkowitej, która otrzymuje górny limit dla kontrolki.
Wartość zwracana
Pierwsza wersja zwraca wartość 32-bitową zawierającą górne i dolne limity. Wyraz o niskiej kolejności jest górną granicą dla kontrolki, a wyraz o wysokiej kolejności jest niższym limitem.
Uwagi
Funkcja GetRange32
składowa pobiera zakres kontrolki przycisku spin jako 32-bitową liczbę całkowitą.
CSpinButtonCtrl::SetAccel
Ustawia przyspieszenie dla kontrolki przycisku pokrętła.
BOOL SetAccel(
int nAccel,
UDACCEL* pAccel);
Parametry
nAccel
Liczba struktur UDACCEL określonych przez pAccel.
pAccel
Wskaźnik do tablicy struktur UDACCEL, które zawierają informacje o przyspieszaniu. Elementy powinny być sortowane w kolejności rosnącej na podstawie elementu nSec
członkowskiego.
Wartość zwracana
Bezzerowe, jeśli się powiedzie; w przeciwnym razie 0.
CSpinButtonCtrl::SetBase
Ustawia podstawę kontrolki przycisku pokrętła.
int SetBase(int nBase);
Parametry
nBase
Nowa wartość podstawowa kontrolki. Może to być 10 dla liczby dziesiętnej lub 16 dla szesnastkowej.
Wartość zwracana
Poprzednia wartość podstawowa, jeśli powiedzie się, lub zero, jeśli podano nieprawidłową bazę.
Uwagi
Wartość podstawowa określa, czy w oknie kumpla są wyświetlane liczby w cyfrach dziesiętnych lub szesnastkowe. Liczby szesnastkowe są zawsze niepodpisane; Liczby dziesiętne są podpisane.
CSpinButtonCtrl::SetBuddy
Ustawia okno kumpla dla kontrolki przycisku pokrętła.
CWnd* SetBuddy(CWnd* pWndBuddy);
Parametry
pWndBuddy
Wskaźnik do nowego okna kumpla.
Wartość zwracana
Wskaźnik do poprzedniego okna kumpla.
Uwagi
Kontrolka spin jest prawie zawsze skojarzona z innym oknem, takim jak kontrolka edycji, która wyświetla część zawartości. To inne okno jest nazywane "kumplem" kontrolki spin.
CSpinButtonCtrl::SetPos
Ustawia bieżące położenie kontrolki przycisku pokrętła.
int SetPos(int nPos);
int SetPos32(int nPos);
Parametry
nPos
Nowe położenie kontrolki. Ta wartość musi znajdować się w zakresie określonym przez górne i dolne limity dla kontrolki.
Wartość zwracana
Poprzednia pozycja (precyzja 16-bitowa dla SetPos
32-bitowej precyzji dla elementu SetPos32
).
Uwagi
SetPos32
ustawia położenie 32-bitowe.
CSpinButtonCtrl::SetRange
Ustawia górne i dolne limity (zakres) dla kontrolki przycisku pokrętła.
void SetRange(
short nLower,
short nUpper);
void SetRange32(
int nLower,
int nUpper);
Parametry
nLower i nUpper
Górne i dolne limity dla kontrolki. W przypadku SetRange
parametru żadna z tych wartości nie może być większa niż UD_MAXVAL lub mniejsza niż UD_MINVAL; ponadto różnica między dwoma limitami nie może przekraczać UD_MAXVAL.
SetRange32
nie nakłada żadnych ograniczeń na limity; użyj dowolnych liczb całkowitych.
Uwagi
Funkcja SetRange32
składowa ustawia zakres 32-bitowy dla kontrolki przycisku pokrętła.
Uwaga
Domyślny zakres przycisku pokrętła ma wartość maksymalną ustawioną na zero (0) i wartość minimalną ustawioną na 100. Ponieważ wartość maksymalna jest mniejsza niż wartość minimalna, kliknięcie strzałki w górę spowoduje zmniejszenie pozycji i kliknięcie strzałki w dół spowoduje jej zwiększenie. Użyj polecenia CSpinButtonCtrl::SetRange
, aby dostosować te wartości.
Zobacz też
Przykładowe CMNCTRL2 MFC
Klasa CWnd
Wykres hierarchii
Klasa CSliderCtrl