共用方式為


CDC::GrayString

在指定位置繪製呈現暗灰色 (灰色) 文字藉由撰寫文字在記憶體點陣圖,為點陣圖,然後複製點陣圖會顯示。

virtual BOOL GrayString( 
   CBrush* pBrush, 
   BOOL ( CALLBACK* lpfnOutput )( HDC, LPARAM, int ), 
   LPARAM lpData, 
   int nCount, 
   int x, 
   int y, 
   int nWidth, 
   int nHeight 
);

參數

  • pBrush
    可識別為要使用之筆刷 (graying)。

  • lpfnOutput
    指定要繪製的字串是由應用程式所提供的回呼函式的程序執行個體的位址。 如需詳細資訊,請參閱 Windows OutputFunc 回呼函式。的描述。 如果此參數為 NULL,系統會使用 Windows TextOut 函式繪製字串,因此, lpData 假設是長指標要輸出的字串。

  • lpData
    指定遠端的指標會傳遞資料到輸出函式。 如果 lpfnOutput 是 NULL, lpData 必須是長指標要輸出的字串。

  • nCount
    指定要輸出的字元數。 如果這個參數為 0, GrayString 計算字串長度 (假設, lpData 是指向字串)。 如果 nCount 為– 1 和函式所指向的 lpfnOutput 傳回 0,影像會出現,但不會呈現暗灰色。

  • x
    指定矩形的開始位置的邏輯 X 座標將字串。

  • y
    指定矩形的開始位置的邏輯 Y 座標將字串。

  • nWidth
    指定寬度 (以邏輯單位將字串) 的矩形。 如果 nWidth 為 0, GrayString 計算區域的寬度,則會假設 lpData 是指向字串。

  • nHeight
    指定高度 (以邏輯單位將字串) 矩形。 如果 nHeight 為 0, GrayString 計算區域的高度,假設 lpData 是指向字串。

傳回值

如果不是零,繪製字串,則為 0。 TextOut 函式或由應用程式所提供的輸出函式傳回 0,如果為,則會建立為暗灰色的記憶體點陣圖的記憶體不足。

備註

無論選取的筆刷和背景,函式為暗灰色文字。 GrayString 成員函式使用目前選取的字型。 必須在使用這個函式之前選取對應的 MM_TEXT 模式。

應用程式可以在支援繪製實心彩色,而不呼叫 GrayString 成員函式的裝置上呈現暗灰色 (灰色)。 系統色彩 COLOR_GRAYTEXT 用來產生實心灰色系統色彩繪製暫止作用文字。 應用程式可以呼叫 GetSysColor Windows 函式擷取 COLOR_GRAYTEXT的色彩值。 如果色彩是 0 以外 (黑色),應用程式可以呼叫 SetTextColor 成員函式來設定文字色彩至色彩值再執行繪製字串。 如果所擷取的色彩為黑色,應用程式必須呼叫 GrayString 暗灰色文字 ()。

如果 lpfnOutput 是 NULLGDI,使用 視窗中, TextOut 函式,並 lpData 假設是遠端的指標會輸出的字元。 如果要輸出的字元不能 TextOut 成員函式處理 (例如,字串會儲存為點陣圖),應用程式必須提供其輸出功能。

同時也請注意任何回呼函式必須在傳回之前截取 Microsoft Foundation 例外狀況加入至 視窗中,,因為例外狀況回呼無法跨界限來擲回。 如需例外狀況的詳細資訊,請參閱本文 例外狀況

回呼函式傳遞至 GrayString 必須使用呼叫慣例 __stdcall ,而且必須使用匯出 __declspec。

當架構在預覽模式中時,會 GrayString 成員函式的呼叫會轉譯為 TextOut 呼叫,因此,回呼函式不會呼叫。

需求

Header: afxwin.h

請參閱

參考

CDC 類別

階層架構圖表

GetSysColor

CDC::SetTextColor

CDC::TextOut

GrayString