共用方式為


CSpinButtonCtrl 類別

提供 Windows 通用微調按鈕控制項的功能。

語法

class CSpinButtonCtrl : public CWnd

成員

公用建構函式

名稱 描述
CSpinButtonCtrl::CSpinButtonCtrl 建構 CSpinButtonCtrl 物件。

公用方法

名稱 描述
CSpinButtonCtrl::Create 建立微調按鈕控制項,並將它附加至 CSpinButtonCtrl 物件。
CSpinButtonCtrl::CreateEx 使用指定的 Windows 擴充樣式建立微調按鈕控制項,並將它附加至 CSpinButtonCtrl 物件。
CSpinButtonCtrl::GetAccel 擷取微調按鈕控制項的加速資訊。
CSpinButtonCtrl::GetBase 擷取微調按鈕控制項的目前基底。
CSpinButtonCtrl::GetBuddy 擷取目前夥伴視窗的指標。
CSpinButtonCtrl::GetPos 擷取微調按鈕控制項的目前位置。
CSpinButtonCtrl::GetRange 擷取微調按鈕控制項的上限和下限(範圍)。
CSpinButtonCtrl::SetAccel 設定微調按鈕控制項的加速。
CSpinButtonCtrl::SetBase 設定微調按鈕控制項的基底。
CSpinButtonCtrl::SetBuddy 設定微調按鈕控制項的夥伴視窗。
CSpinButtonCtrl::SetPos 設定控制項的目前位置。
CSpinButtonCtrl::SetRange 設定微調按鈕控制項的上限和下限(範圍)。

備註

「微調按鈕控制項」(也稱為向上控制項)是一對箭頭按鈕,使用者可以按一下以遞增或遞減值,例如滾動位置或隨附控制項中顯示的數位。 與微調按鈕控制項相關聯的值稱為其目前位置。 微調按鈕控制項最常與隨附控制項搭配使用,稱為「朋友視窗」。

此控制項(因此類別 CSpinButtonCtrl )僅適用于在 Windows 95/98 和 Windows NT 3.51 版和更新版本下執行的程式。

對使用者,微調按鈕控制項及其夥伴視窗通常看起來像單一控制項。 您可以指定微調按鈕控制項自動將本身放置在其夥伴視窗旁邊,而且它會自動將夥伴視窗的標題設定為其目前位置。 您可以使用微調按鈕控制項搭配編輯控制項來提示使用者輸入數值。

按一下向上箭號會將目前位置移至最大值,然後按一下向下箭號會將目前位置移至最小值。 根據預設,最小值為 100,最大值為 0。 每當最小設定大於最大設定時(例如,使用預設設定時),按一下向上箭號會減少位置值,然後按一下向下箭號會增加它。

沒有朋友視窗的微調按鈕控制項會以簡化捲軸的形式運作。 例如,索引標籤控制項有時會顯示微調按鈕控制項,讓使用者將其他索引捲動到檢視中。

如需使用 CSpinButtonCtrl 的詳細資訊,請參閱 控制項 和使用 CSpinButtonCtrl

繼承階層架構

CObject

CCmdTarget

CWnd

CSpinButtonCtrl

需求

標頭: afxcmn.h

CSpinButtonCtrl::Create

建立微調按鈕控制項,並將它附加至 CSpinButtonCtrl 物件。

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

參數

dwStyle
指定微調按鈕控制項的樣式。 將微調按鈕控制項樣式的任何組合套用至控制項。 這些樣式會在 Windows SDK 的向上控制項樣式 描述。

矩形
指定微調按鈕控制項的大小和位置。 它可以是 CRect 物件或 RECT 結構

pParentWnd
微調按鈕控制項父視窗的指標,通常是 CDialog 。 它不得為 Null。

nID
指定微調按鈕控制項的識別碼。

傳回值

如果初始化成功,則為非零;否則為 0。

備註

您會先在兩個步驟中建構 CSpinButtonCtrl 物件,呼叫 建構函式,然後呼叫 Create ,這會建立微調按鈕控制項並將它附加至 CSpinButtonCtrl 物件。

若要建立具有延伸視窗樣式的微調按鈕控制項,請呼叫 CSpinButtonCtrl::CreateEx ,而不是 Create

CSpinButtonCtrl::CreateEx

建立控制項(子視窗),並將它與 CSpinButtonCtrl 物件產生關聯。

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

參數

dwExStyle
指定要建立之控制項的擴充樣式。 如需延伸視窗樣式的清單,請參閱 Windows SDK 中 CreateWindowEx 的 dwExStyle 參數 。

dwStyle
指定微調按鈕控制項的樣式。 將微調按鈕控制項樣式的任何組合套用至控制項。 這些樣式會在 Windows SDK 的向上控制項樣式 描述。

矩形
RECT 結構的參考 ,描述要建立之視窗的大小和位置,在 pParentWnd 的用戶端座標中

pParentWnd
控制項父系之視窗的指標。

nID
控制項的子視窗識別碼。

傳回值

如果成功則為非零;否則為 0。

備註

使用 CreateEx 而不是 Create 來套用延伸的 Windows 樣式,由 Windows 擴充樣式前文WS_EX_指定。

CSpinButtonCtrl::CSpinButtonCtrl

建構 CSpinButtonCtrl 物件。

CSpinButtonCtrl();

CSpinButtonCtrl::GetAccel

擷取微調按鈕控制項的加速資訊。

UINT GetAccel(
    int nAccel,
    UDACCEL* pAccel) const;

參數

nAccel
pAccel 指定陣列中的元素數目。

pAccel
接收加速資訊的 UDACCEL 結構的陣列 指標。

傳回值

擷取的加速器結構數目。

CSpinButtonCtrl::GetBase

擷取微調按鈕控制項的目前基底。

UINT GetBase() const;

傳回值

目前的基底值。

CSpinButtonCtrl::GetBuddy

擷取目前夥伴視窗的指標。

CWnd* GetBuddy() const;

傳回值

目前夥伴視窗的指標。

CSpinButtonCtrl::GetPos

擷取微調按鈕控制項的目前位置。

int GetPos() const;  int GetPos32(LPBOOL lpbError = NULL) const;

參數

lpbError
布林值的指標,如果成功擷取值或發生錯誤,則為零。 如果此參數設定為 Null,則不會報告錯誤。

傳回值

第一個版本會傳回低序字中的 16 位目前位置。 如果發生錯誤,則高階單字為非零。

第二個版本會傳回 32 位位置。

備註

當它處理傳回的值時,控制項會根據夥伴視窗的標題來更新其目前的位置。 如果沒有夥伴視窗或標題指定無效或超出範圍的值,控制項就會傳回錯誤。

CSpinButtonCtrl::GetRange

擷取微調按鈕控制項的上限和下限(範圍)。

DWORD GetRange() const;

void GetRange(
    int& lower,
    int& upper) const;

void GetRange32(
    int& lower,
    int &upper) const;

參數

降低
接收控制項下限之整數的參考。


接收控制項上限之整數的參考。

傳回值

第一個版本會傳回包含上限和下限的 32 位值。 低序字是控制項的上限,而高階字則為下限。

備註

成員函式 GetRange32 會將微調按鈕控制項的範圍擷取為 32 位整數。

CSpinButtonCtrl::SetAccel

設定微調按鈕控制項的加速。

BOOL SetAccel(
    int nAccel,
    UDACCEL* pAccel);

參數

nAccel
pAccel 指定的 UDACCEL 結構數目。

pAccel
UDACCEL 結構的陣列指標,其中包含加速資訊。 元素應以遞增順序根據 nSec 成員排序。

傳回值

如果成功則為非零;否則為 0。

CSpinButtonCtrl::SetBase

設定微調按鈕控制項的基底。

int SetBase(int nBase);

參數

nBase
控制項的新基底值。 十進位為 10,十六進位則為 16。

傳回值

如果成功,則為先前的基底值,如果指定了不正確基底,則為零。

備註

基底值會決定 Buddy 視窗是否以十進位或十六進位數字顯示數位。 十六進位數位一律為不帶正負號;十進位數帶正負號。

CSpinButtonCtrl::SetBuddy

設定微調按鈕控制項的夥伴視窗。

CWnd* SetBuddy(CWnd* pWndBuddy);

參數

pWndBuddy
新夥伴視窗的指標。

傳回值

上一個夥伴視窗的指標。

備註

微調控制項幾乎一律與另一個視窗相關聯,例如顯示某些內容的編輯控制項。 這個另一個視窗稱為微調控制項的「朋友」。

CSpinButtonCtrl::SetPos

設定微調按鈕控制項的目前位置。

int SetPos(int nPos);
int SetPos32(int nPos);

參數

nPos
控制項的新位置。 此值必須位於 控制項的上限和下限所指定的範圍內。

傳回值

上一個位置 (16 位有效位數 為 SetPos ,32 位有效位數為 SetPos32 )。

備註

SetPos32 會設定 32 位位置。

CSpinButtonCtrl::SetRange

設定微調按鈕控制項的上限和下限(範圍)。

void SetRange(
    short nLower,
    short nUpper);

void SetRange32(
    int nLower,
    int nUpper);

參數

nLower nUpper
控制項的上限和下限。 針對 SetRange ,兩個限制都不能大於UD_MAXVAL或小於UD_MINVAL;此外,兩個限制之間的差異不能超過UD_MAXVAL。 SetRange32 不限制限制;使用任何整數。

備註

成員函式 SetRange32 會設定微調按鈕控制項的 32 位範圍。

注意

微調按鈕的預設範圍會設定為零 (0) 和最小值設定為 100。 因為最大值小於最小值,所以按一下向上箭號會減少位置,然後按一下向下箭號會增加它。 使用 CSpinButtonCtrl::SetRange 來調整這些值。

另請參閱

MFC 範例CMNCTRL2
CWnd 類別
階層架構圖表
CSliderCtrl 類別