关于listbox的操作,请帮忙看一下,在线等

cgj36254605 2005-03-18 04:15:27
listbox上的数据每次取10条连成一个串,不足10条时也组成一个串,放到另一个listbox上
如:
a1
a2
a3
a4
a5
a6
a7
a8
a9
a10
a11
a12

在另一个listbox上:
a1a2a3a4a5a6a7a8a9a10
a11a12
...全文
171 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
victor_yang 2005-03-18
  • 打赏
  • 举报
回复
这是个优化后的方法,希望大家指导指导.
function GetStrCount(vSource,vKey:String):Integer;
var
vCount:integer; //最后结果
vTmpSource:TStrings;
vTmpString:String;
begin
vTmpSource:=TStringList.Create;
vTmpString:=vSource; //做个备份
vTmpSource.Text:=StringReplace(vTmpString,vKey,#13#10,[rfReplaceAll, rfIgnoreCase]);
//这里是关键,把关键字改成回车放到TStrings里,TSTrings的个数就是关键字的个数.
Result:=vTmpSource.Count;
end;
victor_yang 2005-03-18
  • 打赏
  • 举报
回复
我在用的一个比较原始的方法:
function GetStrCount(vSource,vKey:String):Integer;
var
vCount:integer;
vTmpSource:String;
begin
vTmpSource:=vSource;
vCount:=0;
while Pos(vKey,vTmpSource)<>0 do
begin
vTmpSource:=Copy(vTmpSource,Pos(vKey,vTmpSource)+1,Length(vTmpSource));
Inc(vCount);
end;
Result:=vCount;
end;
cgj36254605 2005-03-18
  • 打赏
  • 举报
回复
再请教一下:
COM1COM2COM3COM4COM7COM9

假如上面是listbox上的一项,请问怎么获得该字符串有几个'COM'字符?
函数应返回6
怎么写
victor_yang 2005-03-18
  • 打赏
  • 举报
回复
用循环
j:=0;
while j<ListBox1.Items.Count do
begin
vStr:='';
for i:=0 to 9 do
begin
if j=ListBox1.Items.Count then 不足10个退出
Break;
vStr:=vStr+ListBox1.Items[j];
Inc(j);
end;
ListBox2.Items.Add(vStr);
end;
worktest 2005-03-18
  • 打赏
  • 举报
回复
up
zhangyan920 2005-03-18
  • 打赏
  • 举报
回复
procedure TForm1.FormShow(Sender: TObject);
var i:integer;
begin
for i:=0 to 35 do
listbox1.Items.Add('a'+inttostr(i));
end;

procedure TForm1.Button1Click(Sender: TObject);
var a:string;
i:integer;
begin
for i:=1 to 30 do
if i mod 10<>0 then
begin
a:=a+listbox1.Items[i];
end
else if i mod 10=0 then
begin
listbox2.Items.Add(a);
a:='';
end;
end;
laiqinghe 2005-03-18
  • 打赏
  • 举报
回复
var
i,j:integer;
str:string;
begin
for i:=1 to (listbox1.Items.Count div 10 )+1 do
begin
str:='';
for j:=(i-1)*10 to (i*10-1) do
begin
if j<listbox1.Items.Count then
str:= str+listbox1.Items[j];
end;
listbox2.Items.Add(str);

end;
end;

5,927

社区成员

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

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