建立新元件的問題 |
尚未結案
|
TATSU
版主 ![]() ![]() ![]() 發表:50 回覆:135 積分:62 註冊:2003-01-16 發送簡訊給我 |
參考過 code6421 兄的一篇關於 TEdit 旁加上 TButton 的元件,我嘗試建立一個 TComboBox 加上一個 TButton 的元件,但有問題出現。 Button 的高度會較 ComboBox 的為少,而且排放的位置會跟 combobox 內的 button 相同。
FButton.height := FCombo.Height - 4 ;
FButton.Top := FCombo.Top 2 ;
但問題就出在這裏,ComboBox 的高度起始值為 25 ,程式取得 25 ,然後計算出 Button 的高度為 21,原來 ComboBox 計算過 Font size, clientwindow height 後,高度會調整到 21 。
![]() ![]() ![]() |
code6421
版主 ![]() ![]() ![]() ![]() 發表:43 回覆:223 積分:208 註冊:2002-08-16 發送簡訊給我 |
|
TATSU
版主 ![]() ![]() ![]() 發表:50 回覆:135 積分:62 註冊:2003-01-16 發送簡訊給我 |
我有加入處理 Font changed 的問題,但情況仍然,最後我更改: TOwnComboBox = Class(TComboBox)
private
protected
procedure ComboWMSize(var Message : TWMSize) ; message WM_SIZE;
published
end; TOptionComboBox = class(TWinControl)
private
FButton : TSpeedButton ;
FCombo : TOwnComboBox ;
.
.
.
end; implementation
procedure TOwnComboBox.ComboWMSize(var Message : TWMSize);
begin
Inherited ;
if self.Parent.ClassType = TOptionComboBox then
self.Parent.Height := Message.Height ;
end;
雖然已經可以解決有關問題,但我仍在摸索如何加入個別的 event,就以 ComboBox 的 Onkey 為例,因為接數 message 為 TOptionComboBox ,應該如何將該 message 通知 (send) 給內裏的 ComboBox control ?
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |