[geklärt] Fragen zur Nutzung von Methode free

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut

Re: Fragen zur Nutzung von Befehl free

Beitragvon Erwin » 21. Nov 2017, 13:50 Re: Fragen zur Nutzung von Befehl free

Um irgendwie dennoch weiter zu kommen, wollte ich mit der Vorlage hier ein wenig üben:
Mathias hat geschrieben:
Code: Alles auswählen
procedure TForm1.FormCreate(Sender: TObject);
var
  bt: TButton;
begin
  bt := TButton.Create(nil);
  bt.Parent := self;
end;

Da taucht Parent auf. Da ich ungern Befehle nutze, die ich nicht kenne, schaute ich in meinen 2 Bücher über Lazaraus nach. Bzw. 'Larzarus' und 'Free Pascal 2'. In keinem der Bücher steht der Befehl. Oder ist es Methode? Funktion? Jedenfalls steht es nicht im Stichwortverzeichnis. ... ? Das ist alles sehr Frustrierend. Und wenn was dort stünde, dann wahrscheinlich wieder mit so viel Fachbegriffen, das ich eh nichts mehr verstehe. Und wenn ich die Fachbegriffe Verstehen würde, wüsste ich vermutlich eh bereits, was es mit Parent auf sich hat. Scheinbar sind die Beiden nichts anders als Bücher zum Nachschlagen für Experten.
Win 7 / Lazarus 1.6 / FP 3.0.0 / x86_64-win64-win32/win64
Erwin
 
Beiträge: 216
Registriert: 16. Sep 2009, 13:15
OS, Lazarus, FPC: Xubuntu 16.04 / x86_64_linux-gtk 2 / L 1.6+dfsg-1 / FPC 3.0.0 | 
Nach oben

Beitragvon m.fuchs » 21. Nov 2017, 14:08 Re: Fragen zur Nutzung von Befehl free

Erwin hat geschrieben:
Code: Alles auswählen
 
  bt.Parent := self;
 

Da taucht Parent auf. Da ich ungern Befehle nutze, die ich nicht kenne, schaute ich in meinen 2 Bücher über Lazaraus nach. Bzw. 'Larzarus' und 'Free Pascal 2'. In keinem der Bücher steht der Befehl. Oder ist es Methode? Funktion?

Sorry, das wird jetzt etwas hart klingen. Du siehst hinter dem Parent ein :=. Wenn du die Grundlagen von Pascal kennen würdest, dann wäre dir klar dass es weder eine Funktion/Methode oder ein Befehl wäre. Sondern dass dort eine Zuweisung erfolgt. Auch wenn du noch keinerlei Ahnung von OOP hättest, solltest du dort maximal eine Variable (oder eben in diesem Fall eine Property) vermuten. Ich denke doch, dass du noch mal ein Stückchen weiter vorne bei Pascal-Grundlagen anfangen solltest.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1970
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.8.4, FPC 3.0.4) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon Erwin » 21. Nov 2017, 16:05 Re: Fragen zur Nutzung von Befehl free

m.fuchs hat geschrieben:
Erwin hat geschrieben:
Code: Alles auswählen
 
  bt.Parent := self;
 

Da taucht Parent auf. Da ich ungern Befehle nutze, die ich nicht kenne, schaute ich in meinen 2 Bücher über Lazaraus nach. Bzw. 'Larzarus' und 'Free Pascal 2'. In keinem der Bücher steht der Befehl. Oder ist es Methode? Funktion?

Sorry, das wird jetzt etwas hart klingen. Du siehst hinter dem Parent ein :=. Wenn du die Grundlagen von Pascal kennen würdest, dann wäre dir klar dass es weder eine Funktion/Methode oder ein Befehl wäre. Sondern dass dort eine Zuweisung erfolgt. Auch wenn du noch keinerlei Ahnung von OOP hättest, solltest du dort maximal eine Variable (oder eben in diesem Fall eine Property) vermuten. Ich denke doch, dass du noch mal ein Stückchen weiter vorne bei Pascal-Grundlagen anfangen solltest.

Das kapier ich nicht. Der Vorgang ist also eine Zuweisung? Ok, das war mir aber klar, auch wenn ich das nicht extra erwähnt habe.
Und was ist mit meiner Frage?
Was ist Parent?
Ist es eine Variable, ein Array, ein Objekt gar?
Wofür wird es eingesetzt? Als Schleife? Als IF? Für Funktionen?
Was kann man zuweisen? Zahlen? String? Objekte? Funktionen?

Deine Antwort fällt diesmal genau so aus, wie die in meinen Bücher:: Es wird gesagt, wie es richtig heißt. Aber wozu es gut sein soll, was es kann, worauf man achten soll, darüber schweigt es.
Win 7 / Lazarus 1.6 / FP 3.0.0 / x86_64-win64-win32/win64
Erwin
 
Beiträge: 216
Registriert: 16. Sep 2009, 13:15
OS, Lazarus, FPC: Xubuntu 16.04 / x86_64_linux-gtk 2 / L 1.6+dfsg-1 / FPC 3.0.0 | 
Nach oben

Beitragvon m.fuchs » 21. Nov 2017, 16:07 Re: Fragen zur Nutzung von Befehl free

Erwin hat geschrieben:Deine Antwort fällt diesmal genau so aus, wie die in meinen Bücher:: Es wird gesagt, wie es richtig heißt. Aber wozu es gut sein soll, was es kann, worauf man achten soll, darüber schweigt es.

Sorry, aber wenn du eine Zuweisung nicht erkennst und was soll es dir dann helfen wenn wir dir die Einzelheiten der LCL erklären und wie man händisch Objekte erzeugt?
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1970
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.8.4, FPC 3.0.4) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon Erwin » 21. Nov 2017, 16:15 Re: Fragen zur Nutzung von Befehl free

m.fuchs hat geschrieben:
Erwin hat geschrieben:Deine Antwort fällt diesmal genau so aus, wie die in meinen Bücher:: Es wird gesagt, wie es richtig heißt. Aber wozu es gut sein soll, was es kann, worauf man achten soll, darüber schweigt es.

Sorry, aber wenn du eine Zuweisung nicht erkennst und was soll es dir dann helfen wenn wir dir die Einzelheiten der LCL erklären und wie man händisch Objekte erzeugt?

Jetzt bin ich schwer enttäuscht von Dir. Ich habe bereits vorher klar gestellt, dass mir durchaus klar war, dass es eine Zuweisung ist. Dennoch unterstellst mir, dass ich das nicht erkannt hätte.
Und meine Fragen ignoriert Du auch weiter hin.
Wenn Du es nicht erklären kannst, oder selber nicht mal weißt, worum es da wirklich geht, dann lass es halt bleiben.
Win 7 / Lazarus 1.6 / FP 3.0.0 / x86_64-win64-win32/win64
Erwin
 
Beiträge: 216
Registriert: 16. Sep 2009, 13:15
OS, Lazarus, FPC: Xubuntu 16.04 / x86_64_linux-gtk 2 / L 1.6+dfsg-1 / FPC 3.0.0 | 
Nach oben

Beitragvon Thandor » 21. Nov 2017, 16:22 Re: Fragen zur Nutzung von Befehl free

Code: Alles auswählen
 
  bt.Parent := self;
 

Diese Zeile sagt nixt anderes, das der Button "bt" ein Kind von der Form "Form1" ist. Form1 ist also das Elternelement (Parent) von dem Button "bt". Und sagt letztendlich aus, das der Button "bt" abhängig von der Form "Form1" ist. Mit dieser Abhängigkeit stirbt auch der Button "bt", wenn die Form "Form1" stribt (also destroyt wird).

Anmerkungen des Moderators: Fehlinformation gestrichen, damit keine Verwirrung aufkommt.
Thandor
 
Beiträge: 118
Registriert: 30. Jan 2010, 18:17
Wohnort: Berlin
OS, Lazarus, FPC: Windows 10 64Bit/ lazarus 1.6 mit FPC 3.0.0 (32Bit) | 
CPU-Target: 64Bit
Nach oben

Beitragvon m.fuchs » 21. Nov 2017, 16:31 Re: Fragen zur Nutzung von Befehl free

Erwin hat geschrieben:Jetzt bin ich schwer enttäuscht von Dir. Ich habe bereits vorher klar gestellt, dass mir durchaus klar war, dass es eine Zuweisung ist. Dennoch unterstellst mir, dass ich das nicht erkannt hätte.

Du hast es nicht erkannt, denn sonst hättest du nicht etwas von Methoden und Befehlen geschrieben. Das ist auch nicht schlimm, wenn du das noch nicht weißt. Aber es sagt mir, dass du mit weiterführenden Informationen auch noch nichts anfangen kannst.

Erwin hat geschrieben:Und meine Fragen ignoriert Du auch weiter hin.
Wenn Du es nicht erklären kannst, oder selber nicht mal weißt, worum es da wirklich geht, dann lass es halt bleiben.

Hast du denn schon mal die Onlinehilfe genutzt oder nach Lazarus und Parent gesucht? Hast du den Text nicht verstanden und hast jetzt eine weiterführende Frage?
Ich habe irgendwie das Gefühl, du möchtest alles vorgekaut bekommen, hast aber wenig Lust dich mit Hintergrundwissen zu beschäftigen. Dann werden die Antworten natürlich auch nicht detailliert ausfallen.
Vielleicht täusche ich mich ja auch.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1970
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.8.4, FPC 3.0.4) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon m.fuchs » 21. Nov 2017, 16:32 Re: Fragen zur Nutzung von Befehl free

Thandor hat geschrieben:
Code: Alles auswählen
 
  bt.Parent := self;
 

Diese Zeile sagt nixt anderes, das der Button "bt" ein Kind von der Form "Form1" ist. Form1 ist also das Elternelement (Parent) von dem Button "bt". Und sagt letztendlich aus, das der Button "bt" abhängig von der Form "Form1" ist. Mit dieser Abhängigkeit stirbt auch der Button "bt", wenn die Form "Form1" stribt (also destroyt wird).


Völlig falsch, du verwechselst Parent mit Owner. Das sind zwei verschiedene Dinge.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1970
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.8.4, FPC 3.0.4) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon Thandor » 21. Nov 2017, 17:23 Re: [geklärt] Fragen zur Nutzung von Methode free

Oh ja sorry hast natürlich recht.
Thandor
 
Beiträge: 118
Registriert: 30. Jan 2010, 18:17
Wohnort: Berlin
OS, Lazarus, FPC: Windows 10 64Bit/ lazarus 1.6 mit FPC 3.0.0 (32Bit) | 
CPU-Target: 64Bit
Nach oben

• Themenende •
Vorherige

Zurück zu Freepascal



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste

porpoises-institution
accuracy-worried