위의 일부 속도 버튼을 사용하여 TCustomRichEdit을 생성하려고합니다. 이 동작을 어떻게 수행 할 수 있습니까? 구성 요소의 높이는 버튼 + 리치 헷트 일 필요가 있습니다.TCustomRichEdit 위에 속도 버튼 추가
private
FBoldButton: TSpeedButton;
constructor TA1RichEdit.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FBoldButton := TSpeedButton.Create(Self);
FBoldButton.Parent := Self;
end;
destructor TA1RichEdit.Destroy;
begin
FreeAndNil(FBoldButton);
inherited;
end;
이합니다 (리치 에디트는 부모 때문에), 나는 리치 에디트 이상이어야 버튼을 필요로하는 리치 에디트에 speedbutton 페인트 :
[B][I][U]
+-------+
|A1REdit|
| |
+-------+
현재 나는 다음과 같은 코드가 있습니다. 이 코드 조각을 따라야하는 것처럼 부자가 페인트 자체를 페인트하지 않습니다.
부자와 버튼이 자식으로 표시되는 패널 만들기 – whosrdaddy
'TToolbar'는 나에게 맞는 해결책처럼 들립니다. 그러나 리치 헷드를 툴바 (또는 버튼)의 부모로 사용할 수는 없습니다. 다른 컨테이너가 필요합니다. 패널, 툴바 (alTop), 리치 에디트 (alClient)로 구성됩니다. –
관련 : http : // stackoverflow.com/questions/10902749/is-it-wise-to-create-composite-controls –