如何提取listView控件的选择信息!(30分)

  • 主题发起人 主题发起人 nhqing
  • 开始时间 开始时间
N

nhqing

Unregistered / Unconfirmed
GUEST, unregistred user!
如何提取listView控件的选择信息!包括单选和多选,以及如何在行中移动信息,我使用的模式是vsReport!!
谢谢!
email: nhqing@ynmail.com
qq: 8823303
希望和大家做个朋友!


 
说具体一点吧~!
 
procedure TFAdd_data.BitBtn1Click(Sender: TObject);
var
I: Integer;
NewColumn: TListColumn;
ListItem: TListItem;
ListView: TListView;

begin
ListItem := Fmain.listView1.items.add;
with Fmain.ListView1 do
begin
// Parent := Self;
// Align := alClient;
// if ListItem.Index=0 then
// ListItem.
listItem.Caption := Edt_date.Text;
ListItem.SubItems.Add(Cob_type.text);
ListItem.SubItems.Add(Edt_price.text);
ListItem.SubItems.Add(Edt_shuoming.text);
ListItem.SubItems.Add(Edt_beizhu.text);

// ViewStyle := vsReport;

// NewColumn := Columns.Add;
// NewColumn.Caption := 'Last';
// NewColumn := Columns.Add;
// NewColumn.Caption := 'First';
end;

close();


end;


这是我添加的,

var
I : Integer;
begin
if ListView1.Items.Count >0 then
begin
if ListView1.Selected.Selected then
ListView1.Selected.Delete;
end;
//ListView1.Selected.Delete;
// i := ListView1.Selected.Index;
// listView1.Items.Delete(listView1.Selected.Index);
// i :=0;
end;

我通过这种方式删除,在没有选择的时候就报错!
 
var
i: integer;
begin
for i:= ListView1.Items.Count-1 downto 0 do
begin
if ListView1.Items.Selected then ListView1.Items.Delete;
end;
end;
 
这样比较好一点:
begin
if ListView1.Selected<>Nil then
ListView1.Selected.Delete;
end;

这个肯定不报错! [:)]
 
zw84611:
谢谢你的回答,采用这样的方式的化,当我的数据非常大的时候,速度很慢的,有没有更好一点的方法


谢谢各位!
 
if ListView1.Selected<>Nil then
ListView1.selected.caption := 'aaa'
 
没有更好的方法,那我今天下班前把分给大家了,友好的方法希望大家能多多帮忙了
 
发分了,呵呵,
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
857
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部