文本内容:
1111|222|333
4444|555|666怎么把他读到TreeView1里;效果:1111--|
|---222
4444--|
|---555最好给完整代码 要动态加载
因为文本内容没有固定 也许十条或者50条要动态加进去,无论多少条,都行
1111|222|333
4444|555|666怎么把他读到TreeView1里;效果:1111--|
|---222
4444--|
|---555最好给完整代码 要动态加载
因为文本内容没有固定 也许十条或者50条要动态加进去,无论多少条,都行
解决方案 »
- delphi中的tmscomm为何不能用?
- 请问大家,怎样修改 DBGrid 列的 Caption 属性啊!
- 讨论贴:大家认为今年的NBA总冠军是哪个队?
- 如何点击dbgrid的任意一格,取出这一格所在行的全部值?
- 以前没用DEPHI开发过任何软件,想在十天内开发一个进销软件可能吗?
- 如何自动找到光驱并打开VCD文件?
- 生产者与消费者的问题~~~
- 如何控制一个窗口的所有控件随窗口的变化而变化,且在不同分辨率及98和2000中保持一致
- 请问各位我在程序初始化时,出现了冲突,而弹出来一个窗口.我是否可以通过发送回车而跳过去?加在哪个地方?请问回车的代码是什么,怎样发送?谢谢!!!
- 关于TTable的菜鸟问题.
- 程序退出,进程还在?是什么原因?
- 请教image的问题,无法显示图像。
var
bz,i:integer;
begin
bz:=0;
for i:=1 to Length(instr) do
begin
if instr[i]=Fg then
begin
if Copy(instr,bz+1,i-bz-1)<>'' then strlist.Add(Copy(instr,bz+1,i-bz-1)) ;
bz:=i;
end;
end;
if instr<>'' then strlist.Add(Copy(instr,bz+1,Length(instr))) ;
end;使用: GetStr(edit1.Text,'|',memo1.Lines);edit1.text是你的带|字符串,memo1.lines可以存放起来在用treeview加进去就好了,别说你不会加哦
222
333
4444
555
666LZ的意思是这样吧,每一行就是一个节点,以|分隔,前一个值就是后一个值的Parentprocedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
s:widestring;
slist:TStringList;
fNode:TTreeNode;
begin
slist:=TStringList.Create;
try
slist.LoadFromFile('d:\1.txt');
for i:=0 to slist.Count-1 do
begin
s:=slist.Strings[i]+'|';
fNode:=nil;
while true do
begin
j:=pos('|',s);
if j>0 then
begin
fNode:=TreeView1.Items.AddChild(fNode,copy(s,1,j-1));
delete(s,1,j);
if s='' then
break;
end;
end;
end;
finally
slist.Free;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
i,j:integer;
s:widestring;
slist:TStringList;
fNode:TTreeNode;
begin
slist:=TStringList.Create;
try
slist.LoadFromFile('d:\D.txt');
for i:=0 to slist.Count-1 do
begin
s:=slist.Strings[i];
IF s='' then Continue;
fNode:=nil;
while s<>'' do
begin
j:=pos('|',s);
if j>0 then
begin
fNode:=TreeView1.Items.AddChild(fNode,copy(s,1,j-1));
if fNode.Level=1 then Break;
delete(s,1,j);
end
else
Break;
end;
end;
finally
slist.Free;
end;
end;