关于listbox,实现了立即给分!(50分)

  • 主题发起人 主题发起人 sfei222
  • 开始时间 开始时间
S

sfei222

Unregistered / Unconfirmed
GUEST, unregistred user!
现有两个LISTBOX,四个按纽,分别为“部分选择”“部分撤消”
“全部选择”“全部撤消”如何实现DELPHI中PROJECT|OPTIONS|FORMS
中的对调功能:
“部分选择”功能已经实现,代码如下:
procedure TForm3.BitBtn1Click(Sender: TObject);
begin
listbox2.items.add(listbox1.items[listbox1.itemindex]);
listbox1.items.delete(listbox1.itemindex);
end;
 
加一个隐藏的listbox
 
全部选择

listbox2.items:=listbox1.items;
listbox1.items.clear;
 
就这么点分 太少了
 
“部分选择”功能不用这样只要设置listox的mulselect:true;
listbox1.items.selected[0]:=true;
listbox1.items.selected[1]:=true;//选择一二项;
全部选择:
for i:=0 to listbox1.items.count-1 do
listbox1.items.selected:=true;
撤销:
只要把listbox1.items.selected:=true;设为false就可以了
 
对于枪手哈特的方法我以前做过,有点太麻烦;
TO CHSHANGHAI 分不够可以加
我在部分撤消中写的代码如下:
for i := 0 to (listbox2.Items.Count - 1) do
if listbox2.selected then
begin
listbox1.items.add(listbox2.items);
end; 但是如何删除LISTBOX2中的ITEM
 
我的秘籍:
设置 listbox1,listbox2 的mulselect:=true

"部分选择"
listbox1.CopySelection(listbox2)
listbox1.DeleteSelected
全部选择
listbox1.items.text:=listbox2.items.text;
listbox1.items.clear;
其它的调换listbox1 和listbox2的位置就行了


 
to chshanghai :
你的方法真的很好。非常的谢谢你
还有一个问题是
"部分选择"
listbox1.CopySelection(listbox2)
listbox1.DeleteSelected //是不是该改为DeleteSelection
编译是出现没有定义CopySelection,DeleteSelected,是不是还要在USES中加东西;
 
多人接受答案了。
 
后退
顶部