delphi简单列表视图问题

ladofwind 2007-06-15 05:09:04
想把XML解析出来的数据通过列表显示出来
就是相当于表格,有表头,每一行一条数据
xml为:
<data>
<student>
<id>1</id>
<name>zhang</name>
<age>21</age>
</student>
<student>
<id>2</id>
<name>wang</name>
<age>23</age>
</student>
</data>
显示为
学生姓名 学生年龄
zhang 21
wang 23

xml可能包含N个学生,列表也能动态显示n行学生数据,点某一行
的时候能弹出个窗口,把id传到新窗口显示学生的详细信息(30多项目)

请问在delphi里用什么控件比较好,ListView吗?具体怎么操作这个控件,
给出例子代码,100分全给
...全文
210 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
ladofwind 2007-06-16
  • 打赏
  • 举报
回复
怎么弹出新窗口啊用delphi
kjiwu 2007-06-15
  • 打赏
  • 举报
回复
给你点代码看看吧,不好不过大意就是这样;有个单元是用Delphi XML Data Bandig导入的
data.pas

procedure TMainForm.btnCloseClick(Sender: TObject);
begin
Application.Terminate;
end;

procedure TMainForm.btnGetDataClick(Sender: TObject);
var
XMLFilePath: string;
begin
XMLFilePath := ExtractFileDir(ParamStr(0)) + '\data.xml';
GetDataFromXMLToLV(XMLFilePath);
end;

procedure TMainForm.FormCreate(Sender: TObject);
begin
SetListViewColumn();
end;

{----------------------------------------------------------
函数名称: GetDataFromXMLToLV;
函数参数: const aXMLFilePath: string;
参数说明: XML文件的路径;
函数作者: kjiwu
函数返回值: None
函数说明: 从XML文件中取出数据到ListView中;
----------------------------------------------------------}
procedure TMainForm.GetDataFromXMLToLV(const aXMLFilePath: string);
var
Root: IXMLData;
i: Integer;
Node: TListItem;
begin
Root := Loaddata(aXMLFilePath);
for i := 0 to Root.Count-1 do
begin
Node := lv.Items.Add;
with Node do
begin
Caption := Root.Student[i].Name;
SubItems.Add(Root.Student[i].Age);
SubItems.Add(Root.Student[i].Id);
end;
end;
end;

procedure TMainForm.lvClick(Sender: TObject);
begin
if lv.Selected = nil then Exit;

ShowMessage(lv.Selected.SubItems.Strings[1]);
end;

procedure TMainForm.SetListViewColumn;
var
i: Integer;
begin
lv.ViewStyle := vsReport;
for i := 0 to 2 do
begin
lv.Columns.Add;
lv.Column[i].AutoSize := true;
end;
lv.Column[0].Caption := '学生姓名';
lv.Column[1].Caption := '学生年龄';
lv.Column[2].AutoSize := False;
lv.Column[2].Width := 0;
end;
ladofwind 2007-06-15
  • 打赏
  • 举报
回复
没人会吗?

16,747

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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