Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
28. Mai 2009
Dein Code ist auch ok. Das Assign ist auch nur zu empfehlen, wenn die Anzahl der Items nicht zu hoch ist. Das gleiche gilt für deinen Code in #6. Warum soll denn alles schon beim DragOver verschoben werden? Das ist bei vielen Items sicher auch mächtig Performance lastig.
Gruß
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
28. Mai 2009
procedure TForm1.ListBox1DragDrop(Sender, Source: TObject; X, Y: Integer);
var TargetIndex : Integer;
begin
if (Sender is TListBox) and (Source is TListBox) then
begin
with Sender as TListBox do
begin
TargetIndex := ItemAtPos(Point(X, Y), True);
if (ItemIndex > -1) and (ItemIndex > -1) then
begin
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
28. Mai 2009
welche ListBox2?
Wenn die genauso aussieht, einfach die Items aus 1 nach 2 mittels Assign kopieren.
Gruß
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
28. Mai 2009
ah, sorry, hab das whith sender as übersehen.
Ähm, da fällt mir auf, muss der ItemIndex nicht von Source gelesen werden? Ist wohl schon zu spät für mich.
Gruß
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
28. Mai 2009
Na gut, damit wird aber nur zusätzlich das Verschieben aller selektierten Items anstatt nur eines realisiert. Abgesehen davon, dass in deinem vorherigen Post zwei mal auf TargetIndex > -1 geprüft wird fällt mir auf die Schnelle nicht auf.
Ach ja, wo kommt bei dir ItemIndex her?
Gruß oki
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
28. Mai 2009
OnDragOver, OnEndDrag usw.
Gruß oki