目前TButtonGroup
没有WordWrap
房产。我正在寻找一种具有该功能的方法,但我对示例的搜索到目前为止没有产生任何结果。
我的问题是如何为按钮的标题添加自动换行功能,TButtonGroup?
你能给我一个例子或引导我走上正确的道路吗?非常感谢您的回答!顺便说一句,我使用德尔福 XE3
目前TButtonGroup
没有WordWrap
房产。我正在寻找一种具有该功能的方法,但我对示例的搜索到目前为止没有产生任何结果。
我的问题是如何为按钮的标题添加自动换行功能,TButtonGroup?
你能给我一个例子或引导我走上正确的道路吗?非常感谢您的回答!顺便说一句,我使用德尔福 XE3
一个简单的自动换行已经发生,如果您在运行时更改标题,可以通过像这样编辑 DFM 来看到。
Items = <
item
Caption = 'Word'#13'Wrap'#13'3 Lines'
end
...
但是使用 WordWrap 时,默认绘画看起来不太好。
您可以实现OnDrawButton
,但这需要编写大量代码。
最快的方法是设置gboShowCaption
为ButtonOptions
false 并OnAfterDrawButton
像这样实现:
procedure TForm1.ButtonGroup1AfterDrawButton(Sender: TObject; Index: Integer; Canvas: TCanvas; Rect: TRect; State: TButtonDrawState);
var
s:String;
begin
InFlateRect(Rect,-4,-4);
s := TButtonGroup(Sender).Items[Index].Caption;
Canvas.TextRect(Rect,s,[tfWordBreak,tfCenter]);
end;