AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Zur Laufzeit erstellte Elemente werden nicht angezeig

Zur Laufzeit erstellte Elemente werden nicht angezeig

Offene Frage von "justin.kuhn"
Ein Thema von justin.kuhn · begonnen am 13. Apr 2017 · letzter Beitrag vom 16. Apr 2017
Antwort Antwort
Seite 3 von 5     123 45   
a.def
(Gast)

n/a Beiträge
 
#21

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 00:14
Zitat:
Software der Schule.. da kann man nicht machen was man will.
Ok wusste ich nicht. Dumme Lehrer .... wie immer.
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#22

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 00:15
Zitat:
Software der Schule.. da kann man nicht machen was man will.
Ok wusste ich nicht. Dumme Lehrer .... wie immer.
Dito.. LOL

gruss
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#23

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 00:20
An den Themenersteller:
wenn du einfach Copy-Paste machst und dann etwas nicht funktioniert ("unit project1 fehlt")... das bedeutet für mich ganz klar,
dass euer "Lehrer" euch nicht einmal die Grundlagen über den Aufbau einer Delphi-Unit beigebracht hat.

Irgendwie kommen mir diese.... "Delphi-Lehrer" alle vor die umgeschulte Köche oder Handwerker.


Programmaufbau: https://www.delphi-treff.de/object-p...rogrammaufbau/

Geändert von a.def (14. Apr 2017 um 00:25 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#24

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 00:25
Zitat:
Irgendwie kommen mir diese.... "Delphi-Lehrer" alle vor die umgeschulte Köche oder Handwerker.
Ach ja man ist ja genügsam und hilft gern.
Aber irgendwo habe auch ich meine grenzen.

Ich hoffe das er es noch hinbekommt.. irgendwie.
Haben alle mal angefangen.

Dein Link wird ihm wohl helfen..

gruss
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#25

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 10:34
Zitat:
Ich hoffe das er es noch hinbekommt.. irgendwie.
Ich dachte eigentlich der Themenersteller wäre der Schüler

Aber ja. Meinen Link mal angucken, um den Aufbau einer Unit zu verstehen. Dann sieht man auch gleich, was man Copy-Pasten darf und was eher nicht.
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
956 Beiträge
 
Delphi 2007 Professional
 
#26

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 11:20
Oops, habe gerade gesehen, dass es schon drei Seiten Antworten gab. Falls sid das Problem also schon erledigt hat, ignoriert mich einfach.

Hallo, ich hoffe, dass ich das richtige Unterthema gewählt habe. Folgendes Problem habe ich mit diesem Code:
Delphi-Quellcode:
 bt1:= TButton.Create(Main);
 bt1.Parent:= Main;

 btEnde:= TButton.Create(Main);
 btEnde.Parent:= Main;
end;
Dein Fehler liegt in der Verwendung der Variablen Main als Onwer (beim Aufruf von TButton.Create) und als Parent (in der Zuweisung). Main ist zu dem Zeitpunkt noch nicht initialisiert, so dass den Buttons als Owner und Parent NIL zugwiesen wird.

Wenn Du statt Main die implizite Variable Self verwendest, wird es funktionieren. Self ist in Methoden eines Objekts (ein Formular ist ein Objekt) immer die aktuelle Instanz des Objekts, also immer korrekt initialisiert.

twm
Thomas Mueller

Geändert von dummzeuch (14. Apr 2017 um 11:22 Uhr)
  Mit Zitat antworten Zitat
justin.kuhn

Registriert seit: 13. Apr 2017
13 Beiträge
 
#27

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 13:12
Vielen Dank für die zahlreichen Antworten. Ich werde mich am Nachmittag nochmal ausgiebig belesen und weitere Versuche starten.
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#28

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 13:17
Auch dir empfehle ich sehr gerne das Buch Delphi for Kids.
Das Buch ist zwar für Kinder aber genau deswegen ist alles sehr leicht erklärt und auch für Erwachsene verständlich die nicht gerade der IT-Ecke entspringen.

Amazon: https://www.amazon.de/Delphi-f%C3%BC...elphi+for+kids
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.602 Beiträge
 
Delphi 5 Professional
 
#29

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 14:51
Main ist zu dem Zeitpunkt noch nicht initialisiert, so dass den Buttons als Owner und Parent NIL zugwiesen wird.
Eigentlich nicht. Da Main das Hauptformular ist, ist das selbstverständlich mit einer Instanz belegt, auch schon im FormCreate. Außerdem würde es sonst eine AV geben, davon lese ich aber nichts.

Ich finde den Quelltext generell schwierig. Da wird schamlos auf ein anderes Formular aus einer Unit zugegriffen, bei jedem Buttonclick wird eine neue Instanz von Formular und Button erzeugt, aber an keiner Stelle wieder freigegeben (schicke Speicherlecks) usw.

Ich würde die Buttons als Felder der zweiten Formklasse machen, das Erzeugen und Freigeben läuft dann auch innerhalb dieser Form/Klasse. Oder so wie EWeiss es gezeigt hat, aber vermutlich hat der Lehrer einen Grund, eine zweite Unit/Klasse zu benutzen.

Grüße
Dalai
  Mit Zitat antworten Zitat
a.def
(Gast)

n/a Beiträge
 
#30

AW: Zur Laufzeit erstellte Elemente werden nicht angezeig

  Alt 14. Apr 2017, 15:01
Wieso nicht einfach die Buttons im Designer auf das Formular platzieren und diesen ganzen Mist mit dem Erzeugen zur Laufzeug sein lassen?
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 10:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf