listbox.Sorted :=True; 不能排列大于10的数.如 :你输入 1,3,2,6,5,.可以排序成1,2,3,5,6.但是.!!如果你输入 :12,6,54,8,44,就会排序成这样 :12,44,54,6,88.
而我想实现的功能是,用一个edt.text随便输入几个数(这时候listbox.sorted :=false),然后点一个btn->listbox.Sorted :=True;就不可以实现了.什么样才可以随便输入后排列呢?(问题1)
还有我想把listbox1里面的数字全部移动到listbox2 中,但是我用 listbox2.items.add(listbox1.items.text);什么结果是成横线的排列呢.在listbox1里面本来是竖排列的.(为什么?这里什么实现)(问题2)
而我想实现的功能是,用一个edt.text随便输入几个数(这时候listbox.sorted :=false),然后点一个btn->listbox.Sorted :=True;就不可以实现了.什么样才可以随便输入后排列呢?(问题1)
还有我想把listbox1里面的数字全部移动到listbox2 中,但是我用 listbox2.items.add(listbox1.items.text);什么结果是成横线的排列呢.在listbox1里面本来是竖排列的.(为什么?这里什么实现)(问题2)
这个就得自己来实现排序了 var i,j:integer;
temp:string;
begin
with ListBox1 do
begin
for i:=0 to Count-1 do
for j:=i to Count-1 do
if StrToInt(Items[i])>StrToInt(Items[j]) then
begin
temp:=Items[i];
Items[i]:=Items[j];
Items[j]:=temp;
end;
end;
end;