AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Opendialog filename problem

Ein Thema von Innovation · begonnen am 1. Feb 2017 · letzter Beitrag vom 2. Feb 2017
Antwort Antwort
Innovation

Registriert seit: 12. Jan 2017
7 Beiträge
 
#1

Opendialog filename problem

  Alt 1. Feb 2017, 13:48
Hallo,

vermutlich total der Anfängerfehler. Ich benutze einen TOpendialog um einen file auszuwählen und will dann in einer anderen procedure ein file benutzen.

Code:
procedure TForm1.Open1Click(Sender: TObject);
var
  bopendialog : TOpenDialog;
  //BFileName : string;
begin
  bopendialog := TOpenDialog.Create(Self);
  Bopendialog.Execute;
  //BFileName := Bopendialog.FileName;
end;

procedure TForm1.TestbtnClick(Sender: TObject);
begin
  testmemo.Lines.LoadFromFile(Bopendialog.FileName);
end;
ich erhalte folgende Fehlermeldung:

cannot open file ""...

und wie war das nochmal mit dem Opendialog.Free? Reicht es wenn ich das in TForm1.close reinapacke.

MfG
  Mit Zitat antworten Zitat
TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.874 Beiträge
 
Delphi 12 Athens
 
#2

AW: Opendialog filename problem

  Alt 1. Feb 2017, 13:58
Aus Deiner Fehlermeldung entnehme ich, dass Du auch noch einen TOpenDialog mit dem Namen BOpenDialog auf der Form liegen haben musst.
Ansonsten könntest Du diesen in Deiner procedure TForm1.TestbtnClick nicht ansprechen.
In Deiner procedure TForm1.Open1Click erstellst Du aber immer einen neuen TOpendialog und verwendest diesen. Den auf der Form führst Du nie aus. Dadurch erhälst Du den leeren Filename.
Ändere es wie folgt ab, dann sollte es funktionieren:
Delphi-Quellcode:
procedure TForm1.Open1Click(Sender: TObject);
begin
  Bopendialog.Execute;
end;

procedure TForm1.TestbtnClick(Sender: TObject);
begin
  testmemo.Lines.LoadFromFile(Bopendialog.FileName);
end;
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

AW: Opendialog filename problem

  Alt 1. Feb 2017, 14:13
Dann machen wir es doch gleich richtig sauber:
Delphi-Quellcode:
if BopenDialog1.Execute then
  testmemo.Lines.LoadFromFile(BopenDialog1.FileName);
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.016 Beiträge
 
Delphi 12 Athens
 
#4

AW: Opendialog filename problem

  Alt 1. Feb 2017, 14:39
Aber das Hauptproblem war erstmal nicht die ständig neue TOpenDialog-Instanz, sondern die doppelte Definition der Variable bopendialog.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
TBx
(Administrator)

Registriert seit: 13. Jul 2005
Ort: Stadthagen
1.874 Beiträge
 
Delphi 12 Athens
 
#5

AW: Opendialog filename problem

  Alt 1. Feb 2017, 14:40
Aber das Hauptproblem war erstmal nicht die ständig neue TOpenDialog-Instanz, sondern die doppelte Definition der Variable bopendialog.
JAIN. Hätte er die Instanz nicht creiert, wäre ihm das Programm mit einer entsprechenden Fehlermeldung um die Ohren geflogen.
Thomas Breitkreuz
Gruß Thomas
- Admin DelphiPRAXIS
- Admin Delphi-Treff
- Embarcadero MVP
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Opendialog filename problem

  Alt 1. Feb 2017, 17:51
Aber das Hauptproblem war erstmal nicht die ständig neue TOpenDialog-Instanz, sondern die doppelte Definition der Variable bopendialog.
JAIN. Hätte er die Instanz nicht creiert, wäre ihm das Programm mit einer entsprechenden Fehlermeldung um die Ohren geflogen.
Das bopendialog das er in der zweiten Methode anspricht ist aber ein anderes das immer wieder in der ersten Methode erzeugt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.016 Beiträge
 
Delphi 12 Athens
 
#7

AW: Opendialog filename problem

  Alt 1. Feb 2017, 18:01
JAIN. Hätte er die Instanz nicht creiert, wäre ihm das Programm mit einer entsprechenden Fehlermeldung um die Ohren geflogen.
Ja, bezogen auf Open1Click.

Aber bezogen auf "der FileName ist leer" in TestbtnClick lag es an der Doppelten Variable.
Hätte er da die Richtige genommen, wäre zwar immernoch der Dialog doppelt, aber das Auslesen hätte immer geklappt.
"immer", wenn auf der Form ein TOpenDialog lag, was hier ich annehm, aber wie und wo das golbale Bopendialog definiert war, wurde ja nicht verraten.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Innovation

Registriert seit: 12. Jan 2017
7 Beiträge
 
#8

AW: Opendialog filename problem

  Alt 2. Feb 2017, 09:28
Danke für die Antworten.
  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 20:13 Uhr.
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