2011-03-05 95 views
3

我使用CreateWindowEx創建編輯控件(文本框),但是說CW_DEFAULT無助於獲取文本框的默認高度 - 它只是創建一個高度爲零。Win32編輯控件的默認高度

如何獲取文本框的系統默認大小,以便我可以將Edit控件轉換爲正常的文本框?

+0

這是記錄的行爲:「如果'的彈出窗口或子窗口中指定CW_USEDEFAULT',在* nWidth *和* nHeight參數*參數設置爲零。」(http://msdn.microsoft .COM/EN-US /庫/ ms632680.aspx)。所以'CW_USEDEFAULT'肯定是錯誤的方法。 – 2011-03-05 04:58:19

回答

8

推薦的大小是14個對話單位。 Here is the reference

您可以使用MapDialogRect將對話框單位轉換爲像素。

+0

有沒有什麼辦法讓這個以編程方式?或者我需要將它硬編碼到我的程序中? – Mehrdad 2011-03-05 05:40:17

+1

你的意思是14個對話框單位,或者像素數。對話單元以文本行的高度來定義,使得數量應該是硬編碼的。正如我所說的,你再使用'MapDialogRect'轉換爲像素,考慮到字體大小的用戶設置和監控DPI。 – 2011-03-05 05:45:17

+0

我的意思是14個對話單元;謝謝(你的)信息! :) – Mehrdad 2011-03-05 08:13:38