Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Save-Dialog (https://www.delphipraxis.net/39894-save-dialog.html)

mkinzler 12. Mär 2015 16:28

AW: Save-Dialog
 
Dann Setzte dort mal einen Breakpoint und führe dann Zeile für Zeile aus

DeddyH 12. Mär 2015 16:31

AW: Save-Dialog
 
Man muss den SaveDialog erst erzeugen, bevor man ihn benutzt.

mkinzler 12. Mär 2015 16:34

AW: Save-Dialog
 
Und dieser nicht als Komponente auf der Form liegt.

BadenPower 12. Mär 2015 16:35

AW: Save-Dialog
 
Ich sehe ein
Delphi-Quellcode:
SaveDialog1.execute
in der Button1Click-Procedure, aber kein
Delphi-Quellcode:
SaveDialog1: TSaveDialog;
in der Typdeklaration von "TForm17"


EDIT:
Schon wieder zu langsam

DeddyH 12. Mär 2015 16:38

AW: Save-Dialog
 
Markus, selbst wenn er auf der Form läge, würde er nicht angesprochen, sondern die lokale Variable ;)

BadenPower 12. Mär 2015 16:41

AW: Save-Dialog
 
Zitat:

Zitat von DeddyH (Beitrag 1293257)
Markus, selbst wenn er auf der Form läge, würde er nicht angesprochen, sondern die lokale Variable ;)

Richtig, hab ich aber auch übersehen, dass "SaveDialog1" in der Click-Prozedur deklariert ist.

mkinzler 12. Mär 2015 16:41

AW: Save-Dialog
 
Dann würde aber eine Instanz existieren, was hier scheinbar nicht der Fall ist.

Oha eine lokale Variable

Erwin Pälzig 12. Mär 2015 16:46

AW: Save-Dialog
 
Zitat:

Zitat von BadenPower (Beitrag 1293255)
Ich sehe ein
Delphi-Quellcode:
SaveDialog1.execute
in der Button1Click-Procedure, aber kein
Delphi-Quellcode:
SaveDialog1: TSaveDialog;
in der Typdeklaration von "TForm17"

EDIT:
Schon wieder zu langsam

Also fakt ist, im eigentlichen Programm, ist ebenfalls
Delphi-Quellcode:
type
SaveDialog1 :TSaveDialog;
initialisiert, nur es kommt zu folgende Fehlermeldung:
Unit17.pas(93): W1036 Variable 'SaveDialog1' ist möglicherweise nicht initialisiert worden

Danke für eure zahlreiche Hilfe!

DeddyH 12. Mär 2015 16:47

AW: Save-Dialog
 
Kommentier doch mal die lokale Variable aus.

himitsu 12. Mär 2015 17:24

AW: Save-Dialog
 
Zitat:

Zitat von Erwin Pälzig (Beitrag 1293249)
Zitat:

Zitat von mkinzler (Beitrag 1293248)
In welcher Zeile?

Meldung kommt, wenn Code komplett compiliert wurde und danach Button1Click erfolgt.

Darum gibt es den Debugger der zeigt z.B. in welcher Zeile es "knallt", bzw. man kann seinen Code Befehl für Befehl ausführen.

Du hast nur eine lokale Variable SaveDialog1, also mußt du entweder mit TSaveDialog.Create dafür eine Instanz erstellen,
oder den TOpenDialog auf die Form ziehen/legen (hier muß die lokale Variable natürlich weg).

Dann, sind die globalen Variablen sowas von schlecht.
Die gehören in das Private der Formklasse und dann sollten sie ordentliche Namen bekommen, damit man "leicht" erkennt was die eigentlich machen.

Kommentare sind schoin wichtig, aber "sinnlose" Kommentare behindern nur und man übersieht "wichtige" Kommentare.
Vorallem "Einschreiben des ts" und "Einschreiben des Freizeischen" sind extrem kontraproduktiv, denn genau das geschriebene sieht man sofort an den Befehlen.
Wenn einer ständig twittert "bin aufgestanten ... hab rechten Schuh angezogen ... hab linken Schuh angezogen ... mach die Tür auf ... geh auf's klo ... mach tür zu ... *kacken* ...." dann liest keiner mehr das "bin gestorben" .... 800 Zeilen später ... zwischen den 100 "bin am sterben"-Zeilen.


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

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