本文整理自网络,侵删。
procedure ShuffleStrings(List: TStrings; MoveCount: Integer = 0);
var
i, N, C: Integer;
Index1, Index2: Integer;
Str: string;
Obj: TObject;
begin
List.BeginUpdate;
try
C:=List.Count;
N:=MoveCount;
if N <= 0 then N:=C*C-C;
for i:=0 to N do begin
Index1:=Random(C);
Index2:=Random(C);
Str:=List.Strings[Index1];
Obj:=List.Objects[Index1];
List.Strings[Index1]:=List.Strings[Index2];
List.Objects[Index1]:=List.Objects[Index2];
List.Strings[Index2]:=Str;
List.Objects[Index2]:=Obj;
end;
finally
List.EndUpdate;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);beginShuffleStrings(Memo1.Lines);end;
相关阅读 >>
Delphi 从paintbox拷贝一部分内容到tbitmap
Delphi通过adoquery控件实现sqlserver数据库多结果集的数据打印
更多相关阅读请进入《Delphi》频道 >>