Leeres graues Feld

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Aliobaba
Lazarusforum e. V.
Beiträge: 496
Registriert: Di 1. Mai 2012, 09:11

Leeres graues Feld

Beitrag von Aliobaba »

Hallo,

ich programmiere derzeit eine Software, die mehrere Formulare beinhaltet. Nun kämpfe ich schon seit Stunden mit dem Problem, dass ein Formular, das seit Wochen problemlos funktioniert hat, nun plötzlich nicht mehr funktioniert. Ich weiß leider absolut nicht mehr, welcher Schritt meiner letzten Programmiertätigkeit zu diesem Fehler geführt haben könnte.

Das gesamte andere Programm funktioniert, ich kann auch beim Code-schreiben auf die Elemente dieses Formulars zugreifen ("Auto-Vervollständigung" funktioniert problemlos). Aber immer wenn ein Element dieses Fensters aufgerufen wird, kommt die unten angegebene Fehlermeldung.

Auf den Befehl:
" F_dieses_Fenster.Show;"
zeigt mir der Bildschirm das unten hier gepostete Bild; also das gesamte Fenster ohne irgendwelche Inhalte. Obwohl diese Inhalte beim Programmieren - wie gesagt - ansprechbar sind und obwohl dieses Fenster auf der Programmieroberfläche ganz normal zu sehen ist -MIT allen Inhalten.

Hat jemand irgend eine Idee, woran das liegen könnte?

Schon mal Danke!
Aliobaba

Projekt MyMemoryDB hat Exception-Klasse »External: SIGSEGV« ausgelöst.
In Datei 'include/control.inc' in Zeile 3501


Leere.png
Leere.png (80.76 KiB) 1812 mal betrachtet
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 1432
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Lazarus Fixes FPC Stable
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Leeres graues Feld

Beitrag von fliegermichl »

Also ich würde in der IDE mal in das Fenster klicken. Dann kann man im Objektinspektor schon mal sehen, ob man wirklich im Formular oder vielleicht in einem Untercontrol steht, dass vielleicht versehentlich auf Align = alClient gesetzt wurde.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Leeres graues Feld

Beitrag von af0815 »

Wenn eine Fehlermeldung/Exception kommt, so würde ich mir mal den callstack ansehen. Damit könntest du mal auf die Komponente schliessen die den Fehler verursacht.



Bei mir würde ich einmal ein Diff mit Git machen, dann sehe ich zumindest die Änderungen, bzw. würde mit Stash die Änderungen wegspeichern, aber ich habe alles IMMER in einem Git gespeichert. Das wird dir vermutlich nicht viel helfen, ausser du verwendest den.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Aliobaba
Lazarusforum e. V.
Beiträge: 496
Registriert: Di 1. Mai 2012, 09:11

Re: Leeres graues Feld

Beitrag von Aliobaba »

Hallo,

mein Problem ist eben, dass ich zwar schon sehr lange mit Lazarus programmiere, aber nie wirklich die "Tiefen" verstanden habe.
Deshalb verstehe ich im Forum vieles immer noch nicht verstehe(KLar, mein Problem: Ich könnte mich ja intensiver belesen)
Hier im Konkreten:

1. Was und wo ist ein callstack
2. Was ist "Diff" und "Git"
3. Align = alClient habe ich im Objektinspektor nirgendwo gefunden

Bitte nicht falsch verstehen: Das ist KEIN Vorwurf, dass die Antworten nicht gut sind; aber dies zeigt mir, wie oberflächlich ich erst das Programm kenne. Ich bin im Gegenteil beeindruckt, wie schnell ihr mir geantwortet habt! Und weil mir dies alles sehr gut gefällt, unterstütze ich ja auch sehr gerne die Leute hier im Forum, die unheimlich viel leisten - wenigstens mit einem sehr kleinen jährlichen Obulus. Das wenigstens bin ich dieser guten Sache schuldig.

Ich habe mich bei diesem Problem nun soeben - wie so oft - umständlich aber immerhin selber mit dem Schopf aus dem Sumpf gezogen:
Neues Formular erstellt: Alle Objekte umkopiert und alle ".pas" - Einträge angepasst.

Danke jedenfalls! Wenn ich raus kriege, woran das Problem entstanden ist, melde ich mich natürlich. Und wenn noch jemanden etwas einfällt: Ich lerne gerne dazu.

Einen schönen Tag noch!
Aliobaba
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Leeres graues Feld

Beitrag von af0815 »

Lazarus Menu-> View -> Debug Windows -> Call Stack (oder Ctrl+Alt+S) dort max 50 Einstellen. Das Programm laufen lassen bis zur exception und dann mal sehen was der Call Stack sagt. Der oberste Eintrag ist der tiefste in der Programmstruktur. Damit kann man sich von Aufruf zu Aufruf aus der Tiefe des Programms nach oben arbeiten, Quasi den Weg zurückverfolgen. Das Programm muss aber auch mit den entsprechenden Debuggerinfos gebaut worden sein.
Debuggen1.JPG
Debuggen1.JPG (75.78 KiB) 1785 mal betrachtet
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Leeres graues Feld

Beitrag von af0815 »

Beispiel für den Callstack
Callstack.JPG
Callstack.JPG (131.28 KiB) 1785 mal betrachtet
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Leeres graues Feld

Beitrag von af0815 »

Git diff unter anderen
https://www.git-tower.com/learn/git/ebo ... pics/diffs

Auch mit Tortouise Git schön optisch
Dateianhänge
GitDiff.JPG
GitDiff.JPG (191.8 KiB) 1784 mal betrachtet
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Aliobaba
Lazarusforum e. V.
Beiträge: 496
Registriert: Di 1. Mai 2012, 09:11

Re: Leeres graues Feld

Beitrag von Aliobaba »

Vielen herzlichen Dank, af0815,

das werde ich mir in einer ruhigeren Minute (besser wohl Stunden :? ) seehr genau anschauen!

Aliobaba
"MyMemoryDB" ( https://www.heise.de/download/product/mymemorydb-89626 )

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 1432
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Lazarus Fixes FPC Stable
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: Leeres graues Feld

Beitrag von fliegermichl »

Aliobaba hat geschrieben:
Mi 15. Jul 2020, 17:14
Vielen herzlichen Dank, af0815,

das werde ich mir in einer ruhigeren Minute (besser wohl Stunden :? ) seehr genau anschauen!

Aliobaba
git zu benutzen ist eine hervorragende Idee. Mache ich nur noch. Hier ist ein sehr anschauliches Tutorial, welches die ersten und wichtigsten Schritte beschreibt.

Antworten