Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi hängt bei klick auf Frame (https://www.delphipraxis.net/200341-delphi-haengt-bei-klick-auf-frame.html)

MorrisF 11. Apr 2019 13:05

AW: Delphi hängt bei klick auf Frame
 
Zitat:

Zitat von Jumpy (Beitrag 1430088)
Setzt du denn jetzt die Array-Länge wieder zurück?

einfach auf 0 setzen?

MorrisF 11. Apr 2019 13:16

AW: Delphi hängt bei klick auf Frame
 
1000 Dank!!! Das mit dem Array zurücksetzen hat funktioniert. Bekomme keinen Fehler wegen Zugriffsverletzung mehr. :thumb::thumb::thumb:
Lieder hängt sich Delphi immernoch auf, wenn ich einen Haltepunkt in die OnFrameClick Prozedur setze.
Woran könnte das liegen?

FaTaLGuiLLoTiNe 11. Apr 2019 23:27

AW: Delphi hängt bei klick auf Frame
 
Mal so nebenbei:

Zitat:

Zitat von Delphi.Narium (Beitrag 1430073)
Delphi-Quellcode:
if Assigned(Frame[i]) then
 FreeAndNil(Frame[i]);

Bei Aufrufen von TObject.Free und auch FreeAndNil ist die vorherige Prüfung auf Assigned überflüssig. Die Methoden prüfen selbst vor dem Aufruf des Destruktors auf <> nil.

MorrisF 12. Apr 2019 06:57

AW: Delphi hängt bei klick auf Frame
 
Zitat:

Zitat von FaTaLGuiLLoTiNe (Beitrag 1430133)
Bei Aufrufen von TObject.Free und auch FreeAndNil ist die vorherige Prüfung auf Assigned überflüssig. Die Methoden prüfen selbst vor dem Aufruf des Destruktors auf <> nil.

Danke für den Tip!:thumb:
Aber das wird ja wohl nicht der Grund sein, warum sich Delphi beim klick auf den Frame aufhängt. Oder?

haentschman 12. Apr 2019 07:19

AW: Delphi hängt bei klick auf Frame
 
Moin...:P
Zitat:

Bei Aufrufen von TObject.Free und auch FreeAndNil ist die vorherige Prüfung auf Assigned überflüssig.
...ist schon richtig. :wink: Aber wenn du ein Object mit Free wegschmeißt, dann ist das Object nicht nil. Sondern ein "dangling pointer". https://de.wikipedia.org/wiki/H%C3%A4ngender_Zeiger
...dann hast du wieder das gleiche Problem mit der Zugriffsverletzung beim Free. :zwinker:

Am Rande:
Persönlich habe ich mit Arrays keinen Vertrag. Man muß sich immer um die Größe kümmern. Ich stehe mehr auf Listen. Die verwalten sich selbst. :thumb: Tlist<> oder TObjectList<>

hoika 12. Apr 2019 07:46

AW: Delphi hängt bei klick auf Frame
 
Hallo,
Zitat:

warum sich Delphi beim klick auf den Frame aufhängt
Schreibe mal ein Exit oder ein MessageBox() als ersten Aufruf in den OnClick rein.
Prüfe alle Watch-Points, am besten alle mal entfernen.

Jumpy 12. Apr 2019 10:11

AW: Delphi hängt bei klick auf Frame
 
Kannst du das "Aufhängen" von Delphi mal näher bescheiben? Das alles stoppt ist ja eigentlich der Sinn von einem Haltepunkt. Was machen die üblichen Tastenkombinationen F7, F8, F9 oder Strg+F2?

MorrisF 12. Apr 2019 11:07

AW: Delphi hängt bei klick auf Frame
 
Zitat:

Schreibe mal ein Exit oder ein MessageBox() als ersten Aufruf in den OnClick rein.
Prüfe alle Watch-Points, am besten alle mal entfernen.
Eine MessageBox hatte ich schon drin und alle Haltepunkte sind auch entfernt worden (bis auf den eienn on OnFrameClick). Das Problem bleibt bestehen...:(
Ich kann auch in allen Prozeduren des Programmes Haltepunkte setzen, solange sie nicht in OnFrameClick aufgerufen werden.

MorrisF 12. Apr 2019 11:17

AW: Delphi hängt bei klick auf Frame
 
Zitat:

Zitat von Jumpy (Beitrag 1430149)
Kannst du das "Aufhängen" von Delphi mal näher bescheiben? Das alles stoppt ist ja eigentlich der Sinn von einem Haltepunkt. Was machen die üblichen Tastenkombinationen F7, F8, F9 oder Strg+F2?

Mir is schon klar, dass der Sin eines Haltepunkts ist, dass das Programm an der Stelle anhält, wo der Haltepunkt gesetzt wurde xD
Das Aufhängen sieht so aus, dass ich auf den Frame klicke (und ein Haltepuntk in OnFrameClick gesetzt ist) sich mein Programm aufhängt. Sprich, ich komme nichtmal in Delphi, in die Codezeile, in der der Haltepunkt gesetzt ist, sondern mein Programm hängt. Ich kann auch im Programm keine Buttons oder sonstige interaktiven Komponenten betätigen. Ich kann nichtmal in der Taskbar von meinem Programm zurück zur Delphi IDE wechseln. Ich kann auch nicht das Fenster schließen, sprich auf das rote X klicken oder verkleinern oder sonstwas (ähnlich, wie ein freeze..?). Wenn ich versuche, das Programm an sich mit dem Taskmanger zu killen, dann geht das auch nicht. Nur, wenn ich Delphi (also die IDE) mit dem Taskmanager abschieße, schließt sich das Programm.
Die Tastenkombinationen haben auch keine Wirkung, da ich ja nicht in den Code komme.

Jumpy 12. Apr 2019 12:34

AW: Delphi hängt bei klick auf Frame
 
Zitat:

Zitat von MorrisF (Beitrag 1430160)
Zitat:

Zitat von Jumpy (Beitrag 1430149)
Kannst du das "Aufhängen" von Delphi mal näher bescheiben? Das alles stoppt ist ja eigentlich der Sinn von einem Haltepunkt. Was machen die üblichen Tastenkombinationen F7, F8, F9 oder Strg+F2?

Mir is schon klar, dass der Sin eines Haltepunkts ist, dass das Programm an der Stelle anhält, wo der Haltepunkt gesetzt wurde xD

Sorry. Kenn ja dein Level nicht und dachte, ich frage zur Sicherheit mal die offensichtlichen Dinge zuerst nach :).

Zum Problem: Ist das egal, an welcher Stelle der OnFrmeClick du den Haltepunkt setzt?


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:38 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz