Thema: Delphi TTreeview und Dragdrop

Einzelnen Beitrag anzeigen

R2009

Registriert seit: 9. Mär 2009
Ort: Heidelberg
440 Beiträge
 
Delphi 2007 Professional
 
#1

TTreeview und Dragdrop

  Alt 28. Apr 2010, 08:31
Hi DP'ler,
ich habe mal wieder ein kleines Problem weiss aber nicht warum sich der Code so verhält.
Auf meiner Form existiert ein Treeview und eine listbox. In der Listbox habe ich Dragmode auf automatic stehen.
Ziel soll sein den selektierten Eintrag aus der Listbox unter einem bestimmten Knoten im Treeview abzulegen.

In meinem Treeview habe ich folgenden Code implementiert:

Delphi-Quellcode:
procedure Tform_so.TVDragOver(Sender, Source: TObject; X, Y: Integer;
  State: TDragState; var Accept: Boolean);
var tn,tn1,tn2:ttreenode;
begin
  tn := TV.GetNodeAt(X, Y);
  if assigned(tn) then
    begin
      if (tn.Text='Telegramme') then
         begin
           tn.DeleteChildren;
           tn2:=TV.Items.AddChild(tn,'Aktiv Ein:'+'1,2,5,8,21 '+'Aktiv Aus'+'1,2,5,8,22');//'Dies ist ein Text';
           tn2:=TV.Items.AddChild(tn,'Passiv Ein:'+'1,2,5,8,21 '+'Passiv Aus'+'1,2,5,8,22');//'Dies ist ein Text';
           tn2:=TV.Items.AddChild(tn,'SB: 0000 TSB: 0000 TYP: 0000 GRP: 0000');//'Dies ist ein Text';
           TV.FullExpand;
           (Source as TListbox).EndDrag(False);
           accept:=true;
           application.ProcessMessages;
         end;
    end;
end;
Das Problem ist, dass sich das Programm aufhängt sobald ich den Knoten mit dem Text Telegramme erreicht habe.
Was mach ich falsch?

Grüsse
Rainer
Rainer Unger
Mein Profil:
Studium Allgemeine Elektrotechnik TH Darmstadt
Entwicklung von Tools für die Rundsteuer und Zählertechnik.
uP's Atmel Prozessoren (ATmega16,32,88...) in C und Assembler.
  Mit Zitat antworten Zitat