Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Harry Stahl,
5. Jan 2023
Prima, freut mich, dass das jetzt so für Dich passt. Zugegebenermaßen war die Lösung evtl. nicht so direkt offensichtlich, insbesondere die Sache mit dem notwendigen Expand.
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Harry Stahl,
3. Jan 2023
Letztlich willst Du ja ein Event auf das TreeviewItem verwenden, also musst Du denen zunächst auch die Events (am besten zur Laufzeit) zuordnen. Das habe ich im Create-Event gemacht. Da gibt es wohl einen Bug (?), da die Zuordnung nur funktioniert, wenn das TTreeView einmal expandiert wurde.
In der Anlage findest Du die lauffähige Demo, wo somit das Drag & Drop auf die Items auch funktioniert....
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Harry Stahl,
13. Dez 2022
DragDrop müsste jedenfalls so lauten:
procedure TFormViewZuordnen.TreeViewEBilanzDragDrop(Sender: TObject; const Data: TDragObject; const Point: TPointF);
var
Item: TTreeViewItem;
begin
log('DragDrop');
item:= (Sender as TTreeViewItem); //.ItemByPoint(Point.X, Point.y);
// Item:= TTreeView(Sender).ItemByPoint(Point.X, Point.y);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Harry Stahl,
12. Dez 2022
Die Fehlermeldung kommt dann aus dem DragDropEvent.
Da musst Du es wie folgt machen:
Item:= TTreeViewItem(Sender);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by Harry Stahl,
12. Dez 2022
Lass doch mal das
TTreeView(Sender).Selected:= TTreeView(Sender).ItemByPoint(Point.X, Point.y); //Funktioniert, zeigt wunderbare blaue Balken
weg. Nehme an, dass dadurch die items den Fokus erhalten, daher wird dann das Event des Treeviews nicht mehr ausgeführt.