我的一个字符串是由几个字符串组成的,比如说 a,b,c 各有三段子字符串连接而成的a : abcd 12345 asa
b : hrtjfddd 153 bgde
c : bds 8888888 dswegdf由于事先不知道每段子字符串的长度,所以不可能加上数量不等的空格来对齐
我想实现的功能就是,无论每个子字符串的长度是多少,他们占据的空间是相同的,西医各自字符串都是在相同位置开始的,就好像我们使用的 tab 建一样,在 pascal 或着 c 中有 /t 这样的格式的,请问再delphi 中如何实现
b : hrtjfddd 153 bgde
c : bds 8888888 dswegdf由于事先不知道每段子字符串的长度,所以不可能加上数量不等的空格来对齐
我想实现的功能就是,无论每个子字符串的长度是多少,他们占据的空间是相同的,西医各自字符串都是在相同位置开始的,就好像我们使用的 tab 建一样,在 pascal 或着 c 中有 /t 这样的格式的,请问再delphi 中如何实现
解决方案 »
- 用PasLibVlc是不是还要安装VLC?
- FreeAndNil,晕阿~
- 如何按字段的序号,而不是字段名称,来取数据集中的数据
- Delphi编写的DLL在VC中调用
- 请教:如何显示char类型数据
- Message.Msg等于45119是什么消息?在线等候...
- 怎样在win2000下关机?
- 如何得到scrollbar的横竖那个移动滑块的移动距离!!请求各位大侠告诉我答案!!
- 如何在Delphi中设置时延??有现在的函数吗??还是写循环??能把代码Post给我吗..多谢
- (紧急)使用MSHTML库编程时,如何得到Frame中的其他Element,如:InputButton,Select?
- indy控件编程:用idpop3接收邮件程序怎么写啊!急急!!!在线等待!
- StringGrid中用回车来作焦点切换,如何实现?
abd 12345我想实现的是这样:
abcd 12345
abd 12345应该怎么样呢?
http://zswang.51.net/function/zsfunc0z.htmfunction StringAlign(mStr: string; mLength: Integer;
mAlignment: TAlignment; mBackChar: Char = #32): string;
var
L: Integer;
T: string;
begin
Result := mStr;
L := Length(mStr);
if L >= mLength then Exit;
T := DupeString(mBackChar, mLength - L);
case mAlignment of
taLeftJustify: Result := Result + T;
taRightJustify: Result := T + Result;
taCenter: begin
L := Length(T) div 2;
Result := Copy(T, 1, L) + Result + Copy(T, L + 1, MaxInt);
end;
end;
end; { StringAlign }
a b
abc ddd
b: '东北' + ^I + '12345';结果
a:东北人 12345
b:东北 12345
StringAlign('东北', taLeftJustify, 8) + StringAlign('12345', taLeftJustify, 8) + #13#10 +
StringAlign('东', taLeftJustify, 8) + StringAlign('12345', taLeftJustify, 8) + #13#10;StringAlign('东北人', taRightJustify, 8) + StringAlign('12345', taRightJustify, 8) + #13#10 +
StringAlign('东北', taRightJustify, 8) + StringAlign('12345', taRightJustify, 8) + #13#10 +
StringAlign('东', taRightJustify, 8) + StringAlign('12345', taRightJustify, 8) + #13#10;