編輯類別樣式

簡介

在CreateWindow呼叫中將「edit」作為視窗類別建立了一個編輯控制項,視窗樣式是WS_CHILD加上幾個選項。如同在靜態子視窗控制項中一樣,編輯控制項中的文字可以置左對齊、置右對齊或者居中,您使用視窗樣式ES_LEFT、ES_RIGHT和ES_CENTER來指定這些格式。

說明

內定狀態下,編輯控制項是單行的。您使用ES_MULTILINE視窗樣式可以建立多行編輯控制項。對於單行編輯控制項,您一般只可以在編輯控制項矩形的尾部輸入文字。要建立一個自動水平捲動的編輯控制項,您可以採用樣式ES_AUTOHSCROLL。對一個多行編輯控制項,文字會自動跳行,除非使用ES_AUTOHSCROLL樣式。在這種情況下,您必須按Enter鍵來開始新的一行。您還可以便用樣式ES_AUTOVSCROLL來將垂直捲動列包括在多行編輯控制項中。
當您在多行編輯控制項中包括這些捲動樣式時,也許還想給編輯控制項增加捲動列。要做到這些,可以對非子視窗使用同一視窗樣式識別字WS_HSCROLL和WS_VSCROLL。內定狀態下,編輯控制項沒有邊界,利用樣式WS_BORDER則可以增加邊界。
當您在編輯控制項中選擇文字時,Windows將選擇的文字反白顯示。但是當編輯控制項失去輸入焦點時,被選擇的文字將不再被加亮。如果希望在編輯控制項沒有輸入焦點時被選擇的文字仍然被加亮,您可以使用樣式ES_NOHIDESEL。
在POPPAD1建立其編輯控制項時,CreateWindow呼叫依如下形式給出樣式:
WS_CHILD | WS_VISIBLE | WS_HSCROLL | WS_VSCROLL |
WS_BORDER | ES_LEFT | ES_MULTILINE |
ES_AUTOHSCROLL | ES_AUTOVSCROLL
在POPPAD1中,編輯控制項的大小是後來當WndProc接收到WM_SIZE訊息時通過呼叫MoveWindow來定義的。編輯控制項的尺寸被簡單地設定為主視窗的尺寸:
MoveWindow (hwndEdit, 0, 0, LOWORD (lParam),
HIWORD (lParam), TRUE) ;
對於單行編輯控制項,控制項的高度必須可以容納一個字元。如果編輯控制項有邊界(大多數都有),那么使用一個字元高度的1.5倍(包括外部間距)。

相關詞條

相關搜尋

熱門詞條

聯絡我們