6
我有一個由TEdit
和TButton
的複合材料部件(是的,我知道TButtonedEdit
)從TCustomControl
繼承。編輯和按鈕在其構造函數中創建並置於其自身上。選擇框不繪製正確
在設計時候選擇框沒有正確繪製 - 我的猜測是編輯和按鈕隱藏它,因爲它被繪製爲自定義控件,然後透過它們透支。
這裏比較:
我也看到了這一點對於其他第三方組件(如TcxGrid也只繪製選擇指示符的外部分)
問題:如何我改變了嗎?
再現最簡單的例子:
unit SearchEdit;
interface
uses
Classes, Controls, StdCtrls;
type
TSearchEdit = class(TCustomControl)
private
fEdit: TEdit;
public
constructor Create(AOwner: TComponent); override;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Custom', [TSearchEdit]);
end;
{ TSearchEdit }
constructor TSearchEdit.Create(AOwner: TComponent);
begin
inherited;
fEdit := TEdit.Create(Self);
fEdit.Parent := Self;
fEdit.Align := alClient;
end;
end.
德爾福的版本,如果它的事項 –
但我不認爲你會存有任何僥倖。我認爲選擇指標是通過IDE掛鉤控制窗口過程來實現的。而你的控制權被繪製在它的孩子面前。 –
也許最簡單的,我的頭頂,是設計自己的繪畫設計時間。 – Graymatter