我有一个TLabel控件,放在窗体上。因为程序里需要根据情况在其上显示不同长度的信息,所以把它的AutoZize属性设为True。但有时输出的消息太长,导致TLabel控件也变得很长,甚至超出了窗体的右侧。如果能让TLabel控件在达到归定长度后,自动换到下一行去显示就好了。请问大家如何可以解决这个问题?谢谢。
解决方案 »
- 如何在Delphi获取sql server的服务器名?+adoconnection怎么和sql实现动态连接
- 从没做过串口类的程序,请大家帮忙看看
- 高分求穷举密码问题,分不够要多少加多少。
- 关于pdf控件的问题,请教各位大虾
- 远程调用midas,请高手帮忙,在线等待!!!!!!!!!!!!!!!!!!!!!!
- 关于Stringgrid的菜问题(我是初学者)
- 怎么样可以同时打两个delphi源程序?
- 请教STRING类型做为numeric数据类型字段的查询条件,(在线等候!!)
- 求Delphi的中文帮助
- mscomm32.ocx文件注册问题!
- 求助一款sql查询工具的名称
- 请问如何让窗体作为模态对话框和非模态对话框显示?
把颜色设置成Tlabel颜色一样的.
不需要滚动条.
[code]
Label1.AutoSize := True;
Label1.Caption := 'aaa' + sLineBreak + 'bbb'#10#13'ccc';
[/code]----------------------------
http://del.cnblogs.com/
Label1.AutoSize := True;
Label1.Caption := 'aaa' + sLineBreak + 'bbb'#10#13'ccc';-------------------------------
http://del.cnblogs.com/
var
s:string;
begin
result:='';
if length(str)<=len then exit;
result:=copy(str,1,len);
delete(str,1,len);
while length(str)>len do
begin
s:=copy(str,1,len);
result:=result+#13#10+s;
delete(str,1,len);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
var
str:string;
begin
str:='fdsfdsjfdsjfldjsflsdajfdslkahgisdafjdls;ajflsdajfsadjf;asdjfsdakdfas';
label1.Caption:=GetEnterstr(str,10);
下面这个是可以有汉字的
function GetEnterStr(str:widestring;len:integer):widestring;
var
s:widestring;
begin
result:='';
if length(str)<=len then exit;
result:=copy(str,1,len);
delete(str,1,len);
while length(str)>len do
begin
s:=copy(str,1,len);
result:=result+#13#10+s;
delete(str,1,len);
end;
end;procedure TForm1.Button1Click(Sender: TObject);
var
str:widestring;
begin
str:='fdsfdsjfd中华人民共和国,美国日本dls;ajflsdajfsadjf;asdjfsdakdfas';
label1.Caption:=GetEnterstr(str,10);
end;
1. 自己算 文字高宽和Label高宽2. 用Tmemo可行, 设置
memo1.BorderStyle := bsNone;
memo1.ReadOnly := True;
memo1.ParentColor := True; //或memo1.Color := 你想要的颜色;3. 多余的文字用" ... " 代替
Label1.EllipsisPosition := epNone;
Label1.AutoSize := False;