AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Treeview1 markierte Zeile (DblClick) in Edit1 kopieren
Thema durchsuchen
Ansicht
Themen-Optionen

Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

Ein Thema von Alterauge · begonnen am 8. Mai 2013 · letzter Beitrag vom 9. Mai 2013
Antwort Antwort
Seite 1 von 2  1 2      
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#1

Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 21:46
Hallo,

möchte gerne aus einem Treeview1 (markierte Zeile) durch einen doppel Click,
in ein Edit1 kopieren.

Möchte aber nur die ersten 7 Zeichen in das Edit1 kopieren!

so geht es nicht!
Delphi-Quellcode:
if Treeview1.ItemIndex <> -1 then
 Edit1.Text:= Copy (Treeview1.Items[Treeview1.Itemindex], 1, Edit1.MaxLength);
 Treeview1.ItemIndex:=-1;

Geändert von Alterauge ( 8. Mai 2013 um 21:50 Uhr)
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 21:56
Wie wäre es mit:

TreeView1.Items[TreeView1.Selected.Index].Text Versuchs mal.
  Mit Zitat antworten Zitat
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#3

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:06
Hey,
habe es so versucht:

      Edit1.Text:=TreeView1.Items[TreeView1.Selected.Index].Text;
Es wird jetzt auch was an Edit1 übergeben!
Aber nicht was ich markiert habe?
  Mit Zitat antworten Zitat
Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#4

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:10
Hallo,

versuche es mal damit:
Delphi-Quellcode:
if Assigned (TreeView1.Selected) then
  Edit1.Text := Copy (TreeView1.Selected.Text, 1, Edit1.MaxLength)
Gruß
Volker Zeller
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:12
Also bei mir wird mit der Zeile, die du hier gepostet hast, genau der Text der ausgewählten TreeNode in das Editfeld geschrieben. Diese Zeile einfach in das OnDblClick Event des TreeViews einfügen und es sollte funktionieren. Und wenn nur die ersten 7 Zeichen kopiert werden sollen, dann einfach noch mit Delphi-Referenz durchsuchenCopy() umklammern.

Edit1.Text := Copy(TreeView1.Items[TreeView1.Selected.Index].Text, 1, 7);
  Mit Zitat antworten Zitat
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#6

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:23
Hey,
es wird nicht die akuelle Zeile, sondern die Folgende Zeile kopiert?

Geändert von Alterauge ( 8. Mai 2013 um 22:32 Uhr)
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:29
Wurde der Baum mit TreeView1.SaveToFile() gespeichert oder hast du die Datei selbst erstellt? Wenn letzteres der Fall ist, dann zähl mal die Leerzeichen vor den einzelnen Zeilen. Nicht das dort ein Fehler vorliegt.

Folgendes steht in der Hilfe zu LoadFromFile():
Zitat:
Mit LoadFromFile können Sie in einer Datei gespeicherte Daten in ein Baumdiagramm laden. FileName sollte auf eine Datei verweisen, die mit der Methode SaveToFile gespeichert wurde. Baumdiagrammdateien sind Textdateien, die die Eigenschaft Text aller Knoten des Baumdiagramms zeilenweise auflisten. Jedem Textwert sind Leerzeichen vorangestellt, die die jeweilige Verschachtelungstiefe angeben.

Anmerkung: Baumdiagrammdateien enthalten nur den Text der Baumknoten und keine mit den Knoten verbundenen Daten.
  Mit Zitat antworten Zitat
Alterauge

Registriert seit: 4. Mär 2011
306 Beiträge
 
Delphi 2010 Professional
 
#8

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:38
Habe die Datei selbst erstellt(txt-file)!
Hier ein Beispiel:

Vorname
-Klaus
-Dierter
Nachname
-Müller
-Schmidt

Der Strich stellt ein Leerzeichen da!
Was muss ich änder?

Geändert von Alterauge ( 8. Mai 2013 um 22:40 Uhr)
  Mit Zitat antworten Zitat
Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#9

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:40
Hallo,

da Deine Treeview Knoten nicht nur auf der ersten Ebene haben, funktioniert es nicht mit der Eigenschaft TTreeNode.Index.

Aus der OH:
Zitat:
Mit Index legen Sie die Position des Knotens relativ zu den gleichgeordneten Knoten fest. Der erste untergeordnete Knoten eines übergeordneten Knotens hat den Index 0, alle folgenden untergordneten Knoten werden fortlaufend numeriert.
Wenn, dann funktionert es mit der Eigenschaft AbsoluteIndex

Aus der OH:
Zitat:
Mit AbsoluteIndex wird die absolute Position eines Knotens in einem Baumknoten-Objekt übergeben. Der erste Knoten eines Baumknoten-Objekts hat den Indexwert 0, der erste Unterknoten den Wert 1 usw. Verfügt ein Knoten über untergeordnete Objekte, so ist sein Index stets um den Wert 1 kleiner als der des ersten untergeordneten Objekts.
Delphi-Quellcode:
if Assigned (TreeView1.Selected) then
  Edit1.Text := Copy (TreeView1.Items [TreeView1.Selected.AbsoluteIndex].Text, 1, Edit1.MaxLength)
Gruß
Volker Zeller
  Mit Zitat antworten Zitat
Aviator

Registriert seit: 3. Jun 2010
1.611 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: Treeview1 markierte Zeile (DblClick) in Edit1 kopieren

  Alt 8. Mai 2013, 22:42
Sieht für mich jetzt nicht falsch aus. Erstell dir doch zum Test mal im Designer die einzelnen Nodes und lass es dir mal mit SaveToFile() als Datei ausgeben. Vergleiche diese Dateien danach einmal. Oder versuch diesen Doppelklick-Teil nocheinmal mit der zuvor gespeicherten Datei die du dann beim Programmstart wieder eingelesen hast.

Edit:
Stimmt Volker. So weit habe ich jetzt gerade nicht gedacht. Mit Untergruppen muss man natürlich AbsoluteIndex benutzen.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz