AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Klassen

Ein Thema von Cöster · begonnen am 30. Aug 2006 · letzter Beitrag vom 31. Aug 2006
 
Benutzerbild von GuenterS
GuenterS

Registriert seit: 3. Mai 2004
Ort: Österreich > Bad Vöslau
760 Beiträge
 
Turbo Delphi für Win32
 
#19

Re: Problem mit Klassen

  Alt 31. Aug 2006, 16:28
Zitat von Jelly:
Zitat von Cöster:
Dann bräuchte ich aber drei Parameter. Für Dlg.Execute brauche ja auch den Parameter des Typs TOpenPictureDialog. Hast du das übersehen?
Klassen sollen, wenn möglich, für sich alleine werkeln können. Referenzen von anderen Objekten zu übergeben ist also nicht immer angebracht, meiner Meinung nach.

Da ich davon ausgehe, dass Du jetzt kein spezielles TOpenPictureDialog konfigueriert hast, würde ich diesen auch selbst in deiner Klasse erzeugen. Dann brauchst Du nämlich gar nix übergeben... Etwa so:


Delphi-Quellcode:
procedure TBild.Oeffnen(Img: TImage);
var
 dlg : TOpenPictureDialog ;
begin
  try
     Dlg := TOpenPictureDialog.create (Self) ;
     // Hier kannst Du natürlich noch weiter Dlg Eigenschaften einstellen, wie z.B. Dlg.Title oder Dlg.Filter
     If Dlg.Execute then
     begin
       self.FCurrentFile := Dlg.FileName;
       Img.Picture.LoadFromFile(Dlg.FileName);
       Img.Picture.Bitmap.PixelFormat := pf24Bit;
       Img.Visible := True;
     end;
  finally
     Dlg.Free ;
  end ;
end;

Delphi-Quellcode:
procedure TBild.Oeffnen(Img: TImage);
var
 dlg : TOpenPictureDialog ;
begin
     Dlg := TOpenPictureDialog.create (Self) ;
  try
     // Hier kannst Du natürlich noch weiter Dlg Eigenschaften einstellen, wie z.B. Dlg.Title oder Dlg.Filter
     If Dlg.Execute then
     begin
       self.FCurrentFile := Dlg.FileName;
       Img.Picture.LoadFromFile(Dlg.FileName);
       Img.Picture.Bitmap.PixelFormat := pf24Bit;
       Img.Visible := True;
     end;
  finally
     Dlg.Free ;
  end ;
end;
Wäre so besser, da Du sonst versuchst etwas freizugeben, was vielleicht gar nicht erzeugt worden ist, im Falle wenn das Erzeugen des Dialogs schon fehlschlägt.
Günter
Pünktlichkeit ist die Fähigkeit vorherzusagen um wieviel sich der Andere verspäten wird.
  Mit Zitat antworten Zitat
 


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 08:35 Uhr.
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