AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Problem: Kein Übergeordnetes Fenster bei neuer Komponente
Thema durchsuchen
Ansicht
Themen-Optionen

Problem: Kein Übergeordnetes Fenster bei neuer Komponente

Ein Thema von MarcRB1975 · begonnen am 21. Sep 2006 · letzter Beitrag vom 21. Sep 2006
Antwort Antwort
MarcRB1975

Registriert seit: 5. Jul 2006
15 Beiträge
 
Turbo Delphi für Win32
 
#1

Problem: Kein Übergeordnetes Fenster bei neuer Komponente

  Alt 21. Sep 2006, 12:33
Hallo,
ich hab ein Problem mit einer Komponentenerstellung.
Ich bekomme immer den Fehler : '' hat kein übergeordnetes Fenster.
Das versteh ich überhaupt nicht.

Mein Source:

Delphi-Quellcode:
type
TMTabelle = Class(TStringGrid)

private

protected

public
    destructor Destroy;
    constructor Create(AOwner:TComponent);override;
    procedure Laden;

published

end;

procedure Register;

implementation

List : TListBox;


procedure Register;
begin
RegisterComponents('Standard', [TMTabelle]);
end;

destructor TMTabelle.Destroy;
begin
inherited ;
end;

constructor TMTabelle.Create(AOwner:TComponent);
begin
inherited Create(AOwner);
List := TListbox.Create(self);
List.Parent := self;
Laden; // <--- dieser Verweis bringt mir den Fehler, aber warum??
end;

procedure TMTabelle.Laden;
var Pfad : String;
begin
pfad := 'Beispiel.txt';
List.Items.LoadFromFile(Pfad);
end;

Ich kann absolut nicht verstehen, warum er mir, wenn ich auf die Procedur "Laden" verweise, den Fehler bringt. "List" hab ich doch Parent zugewiesen.

Vielleicht könnte mir ja jemand sagen, was ich da falsch mache.
Marc
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Problem: Kein Übergeordnetes Fenster bei neuer Komponent

  Alt 21. Sep 2006, 12:51
Brrr. List ist eine globale Variable.
Denk mal nach was passiert wenn du 2 Instanzen deiner Komponente erzeugst.

Es könnte sein das Du zwar einen (VCL-)Parent definiert hast, aber dieser noch kein Windows-Handle hat bei List.Items.LoadFromFile schon mit Windows-Handles gearbeitet wird.
Was spricht dagegen wenn du diese Liste in einer internen Liste speicherst und erst wenn die ListBox sichtbar ist dies Listbox füllst.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
runger
(Gast)

n/a Beiträge
 
#3

Re: Problem: Kein Übergeordnetes Fenster bei neuer Komponent

  Alt 21. Sep 2006, 12:56
Hallo,

nimm statt Tlistbox Tstringlist dann gehts. Tlistbox ist eine visuelle Komponente. Wo soll diese sich denn hinzeichnen wenn kein übergeordnetes Fenster da ist?

Rainer
  Mit Zitat antworten Zitat
MarcRB1975

Registriert seit: 5. Jul 2006
15 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Problem: Kein Übergeordnetes Fenster bei neuer Komponent

  Alt 21. Sep 2006, 13:21
Hallo,
ohh... danke für die schnellen Nachrichten. Ich werd das mal gleich versuchen, ob das geht.

DANKE!!
Marc
  Mit Zitat antworten Zitat
Antwort Antwort


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 21:51 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