Hallo Leute,
nach langer Zeit habe ich wieder ein Problem:
Ich habe eine ListBox, in der Nummern geäddet werden. Im TreeView habe ich Gruppen. Die Nummern sollen den Gruppen mit Drag&Drop zugewiesen werden. Irgendwie geht hier aber mein Code nicht richtig. Also ich kann die Nummern markieren aber mehr auch nicht.
kurz gesagt: Es passiert einfach gar nichts.
Danke schon mal für eure Hilfe/Tipps/Anregungen
Liebe Grüße Blubbel
im anhang ein bild von der oberfläche damti ihrs euch besser vorstellen könnt.
Delphi-Quellcode:
procedure TForm6.cxtrvw1DragOver(Sender, Source: TObject; X, Y: Integer; State: TDragState; var Accept: Boolean);
var
lSource: string;
i: Integer;
lNumber: TNumber;
lGroup: TGroup;
lNode: TTreeNode;
begin
Accept := false;
if Assigned(Source) then
begin
lSource := string(Source.ClassName);
if (Source is TcxListBox) then
begin
i := TcxListBox(Source).ItemIndex;
if (i >= 0) then
begin
lNumber := TNumber(TcxListBox(Source).Items.Objects[i]);
if Assigned(lNumber) then
begin
lNode := TcxTreeView(Sender).GetNodeAt(x, y);
if Assigned(lNode) then
begin
case State of
dsDragEnter, dsDragMove:
begin
Accept := not Self.IsObjectInGroup(lNode, lNumber);
end;
dsDragLeave:
begin
if not Self.IsObjectInGroup(lNode, lNumber) then
begin
TcxTreeView(Sender).Items.AddChildObject(lNode, lNumber.UID, lNumber);
Accept := True;
end;
end;
end;
end else
if (Source is TcxTreeView) then
begin
//Hierran liegts nicht... Das Problem muss oberhalb des Else-Falles sein
end;
end;
end;
end;
end;
end;