Einzelnen Beitrag anzeigen

Blubbel

Registriert seit: 6. Okt 2011
125 Beiträge
 
Delphi 2010 Professional
 
#1

Drag&Drop mit TcxListBox und TcxTreeList

  Alt 3. Jul 2012, 17:17
Delphi-Version: 5
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;
Miniaturansicht angehängter Grafiken
oberflaeche.png  

Geändert von Blubbel ( 3. Jul 2012 um 17:29 Uhr)
  Mit Zitat antworten Zitat