listview的一些用法

2022-06-09 11:45:09 字數 2967 閱讀 7410

listview使用中的一些要點。以下以乙個兩列的listview為例。

→增加一行:

with listview1 do

begin

listitem:=items.add;

listitem.caption:='第一列內容';

listitem.subitems.add('第二列內容');

end;

→清空listview1:

listview1.items.clear;

→得到當前被選中行的行的行號以及刪除當前行:

for i:=0 to listview1.items.count-1 do

if listview1.items[i].selected then  //i=listview1.selected.index

begin

listview1.items.delete(i);  //刪除當前選中行

end;

當然,listview有onselectitem事件,可以判斷選擇了哪行,用個全域性變數把它賦值出來。

→讀某行某列的操作:

edit1.text := listview1.items[i].caption;  //讀第i行第1列

edit2.text := listview1.items[i].subitems.strings[0];  //讀第i行第2列

edit3.text := listview1.items[i].subitems.strings[1];  //讀第i行第3列

以次類推,可以用迴圈讀出整列。

→將焦點上移一行:

for i:=0 to listview1.items.count-1 do

if (listview1.items[i].selected) and (i>0) then

begin

listview1.setfocus;

listview1.items.item[i-1].selected := true;

end;

引用內容

不過在delphi7中,listview多了乙個itemindex屬性,所以只要

listview1.setfocus;

listview1.itemindex:=3;

就能設定焦點了。

delphi的listview能實現交替顏色麼?

程式**

procedure tform1.listview1customdrawitem(

sender: tcustomlistview; item: tlistitem; state: tcustomdrawstate;

var defaultdraw: boolean);

vari: integer;

begin

i:= (sender as tlistview).items.indexof(item);

if odd(i) then sender.canvas.brush.color:= $02e0f0d7

else sender.canvas.brush.color:= $02f0eed7;

sender.canvas.fillrect(item.displayrect(dricon));

end;

//選中一行

if listview1.selected <> nil then

edit1.text := listview1.selected.caption;

// 選擇第一條

procedure tform1.button2click(sender: tobject);

begin

listview1.setfocus;

listview1.items[0].selected := true;

end;

// 選擇最後一條

procedure tform1.button1click(sender: tobject); 

begin

listview1.setfocus;

listview1.items[listview1.items.count -1].selected := true;

end; 

//此為呼叫過程,可以任意指定要移動的item,下面是當前(selected)item

procedure listviewitemmoveupdown(lv : tlistview; item : tlistitem; moveup, setfocus : boolean);

vardestitem : tlistitem;

begin

if (item = nil) or

((item.index - 1 < 0) and moveup) or

((item.index + 1 >= lv.items.count) and (not moveup))

then exit;

lv.items.beginupdate;

tryif moveup then

destitem := lv.items.insert(item.index - 1)

else

destitem := lv.items.insert(item.index + 2);

destitem.assign(item);

lv.selected := destitem;

item.free;

finally

lv.items.endupdate;

end;

if setfocus then lv.setfocus;

destitem.makevisible(false);

end;

listviewitemmoveupdown(listview1, listview1.selected, true, true);//上移

listviewitemmoveupdown(listview1, listview1.selected, false, true);//下移

listview的一些用法

listview使用中的一些要點。以下以乙個兩列的listview為例。增加一行 with listview1 do begin listitem items.add listitem.caption 第一列內容 listitem.subitems.add 第二列內容 end 清空listview1...

ListView的一些屬性

android divider null android cachecolorhint 00000000 設定其為透明 預設為黑色 android layout height 0dp android layout weight 1 一般是設定android weight屬性的時候才使用,如果你的布局...

的一些用法

action標籤,顧名思義,是用來呼叫action的標籤,在jsp中頁面中,可以具體指定某一命名空間中的某一action。而標籤的主體用於顯示及渲染actionr的處理結果。action標籤有如下幾個屬性 id 可選屬性,作為該action的引用id name 必選屬性,指定呼叫action nam...