200分求酒店房间分布图的解决方案,ListView很麻烦,自己要写很多代码控制。

vfork 2009-02-18 08:43:05
200分求酒店房间分布图的解决方案,ListView很麻烦,自己要写很多代码控制。
...全文
164 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
bdmh 2009-02-19
  • 打赏
  • 举报
回复
listview很麻烦吗,做分布图,我感觉应该是可以的,再不行,可以自己在canvas上 画,或者用第三方的
HsWong 2009-02-19
  • 打赏
  • 举报
回复
首先要增加足够的列,否则会报错的

with ListView1.Items.Add do
begin
Caption:='';
SubItems.Add('');
SubItems.Add('');
SubItems.Add('');
SubItems.Add('');
end;
ListView1.Items[0].SubItems[3]:='第一行第五列';
skertone 2009-02-19
  • 打赏
  • 举报
回复
用个Panel做底 用它的 Controls 来管理 另一自定义的组件(panel之类,或组合组件)列表

hxh1970 2009-02-19
  • 打赏
  • 举报
回复
地图控件
QQ:4818472
vfork 2009-02-19
  • 打赏
  • 举报
回复
自己顶一下,我先用listview写吧,继续等解决方案。
starluck 2009-02-18
  • 打赏
  • 举报
回复


var
vItem : TListItem;
begin
vItem := ListView1.Items.Add;
vItem.Caption := '1';
vitem.SubItems.Append( '第五行第五列');
vitem.SubItems.Append( '第五行第五列');
vitem.SubItems.Append( '第五行第五列');
vitem.SubItems.append( '第五行第五列');
// 上面我创建了四列,那么我现在改写第三列是没有问题的。也就是下面这句不会出错。但如果我上面只创建二列,下面这个就会出错。因为超过界限了。
vItem.SubItems.Strings[3] := 'test';

//当然上面那一句也可以改下,更加稳定
if Vitem.SubItems.Count >= 3 then vItem.SubItems.Strings[3] := '这样不会错';
end;

不得闲 2009-02-18
  • 打赏
  • 举报
回复
使用TGridPanel看看
xsf2516624 2009-02-18
  • 打赏
  • 举报
回复
怎么说法?对了我也给listview搞烦。

我要向listview1指定的位置(第五行第五列)写入字符串:
写了这个代码:listview1.Items.Item[4].SubItems.Strings[3]:='第五行第五列';
怎么编译时候没错,但是执行这段代码的时候出现错误?该怎么办?怎么向指定的位置写入字符串?

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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