Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TreeView Zugriffsverletzung (https://www.delphipraxis.net/164188-treeview-zugriffsverletzung.html)

Captnemo 2. Nov 2011 09:00

TreeView Zugriffsverletzung
 
Ich versuche grad ein Projekt mit TTreeView zu ralisieren. Ich habe mir mal von hier http://users.iafrica.com/d/da/dart/z...View_eg05.html das Tutorial durchgelesen. Aber ich hab schon beim anlegen des ersten Nodes probleme. Kann mir jemand sagen, was ich hier falsch mache? Und warum?

Delphi-Quellcode:
unit Main;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ExtCtrls, ComCtrls;

type
  TStandort = class
    iLfdnr: Integer;
    sTyp:  String;
    sName: String;
    sPLZ:  String;
    sOrt:  String;
    sStrasse: String;
    sTelefon: String;
  end;

type
  Tfrm_main = class(TForm)
    MainMenu1: TMainMenu;
    Datei1: TMenuItem;
    Beenden1: TMenuItem;
    tv: TTreeView;
    pnl_frame: TPanel;
    pm_tv: TPopupMenu;
    mi_NeuerStandort: TMenuItem;
    procedure Beenden1Click(Sender: TObject);
    procedure mi_NeuerStandortClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  frm_main: Tfrm_main;

implementation

{$R *.dfm}

procedure Tfrm_main.Beenden1Click(Sender: TObject);
begin
  frm_main.Close;
end;

procedure Tfrm_main.mi_NeuerStandortClick(Sender: TObject);
var
  tn_standort: TTreeNode;
  standort: TStandort;
begin
  tn_standort:=tv.Items.AddNode(tn_standort,nil,'Neuer Standort',nil,naAdd);
  tn_standort.Data:=TStandort.Create;
  TStandort(tn_standort.Data).sTyp:='Standort'; //Hier tritt die Zugrffsverletzung auf
end;

end.

wicht 2. Nov 2011 09:10

AW: TreeView Zugriffsverletzung
 
Hi,

Delphi-Quellcode:
tn_standort:=tv.Items.AddNode(nil,nil,'Neuer Standort',nil,naAdd);

Übergib da, wie hier von mir gezeigt, als ersten Parameter ein nil - die Variable ist da ja nicht initialisiert, das dürfte den Baum durcheinanderbringen...

HTH

Captnemo 2. Nov 2011 09:40

AW: TreeView Zugriffsverletzung
 
Danke, das war der Fehler. :oops: Mann....is ja auch logisch. Aber ich habs nicht gesehen


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:55 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