一个button控件的caption自动换行问题!

kay16 2002-01-27 12:41:34
我在做一个收税软件时,有些button键功能是双重的,caption如果过长就被挡住了,只能看到一部分,能不能有个方法把一部分换到下一行?请多指教!
比如一个键的caption是  “加成/入帐”想换成 “ 加成”
                        入帐 
...全文
339 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
hotyei 2002-02-03
  • 打赏
  • 举报
回复
先试试Button.Caption := '加成'+'\n'+'入帐',看行不行。
如果不行:

var
DC : HDC;
Canvas : TCanvas;
begin
Button.Caption := '加成'+'\n'+'入帐'
DC := GetDC(Button1.Handle);
Canvas := TCanvas.Create(Self);
Canvas.Handle := DC;

DrawText(Canvas.DC,pChar(Button.Caption),Length(Button.Caption),CLIENTRECT,DT_CENTER+DT_WORDBREAK);

Canvas.Free;
ReleaseDC(Button.Handle,DC);

如果继承的话就只要一两行代码了,因为不用自己取得Canvas.
DURON800 2002-01-27
  • 打赏
  • 举报
回复
因为BUTTON控件的CAPTION属性是不支持换行的,写代码(如:button1.CAPTION:=‘加成’+ chr(13)+ chr(10) + '入帐')都不行。
liaokuo 2002-01-27
  • 打赏
  • 举报
回复
"加成"+#13+'入帐'
也可能不行~~~~~~
DURON800 2002-01-27
  • 打赏
  • 举报
回复
不行,只有用两个按钮,分别显示,一个VISIBLE为TRUE时,另一个为FALSE.
kay16 2002-01-27
  • 打赏
  • 举报
回复
我是初学的,还不知道怎么画:(
hotyei 2002-01-27
  • 打赏
  • 举报
回复
自己画上去吧。也只是一行代码的事。

5,930

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧