AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Prüfen ob Image leer ?
Thema durchsuchen
Ansicht
Themen-Optionen

Prüfen ob Image leer ?

Ein Thema von needatip · begonnen am 6. Okt 2005 · letzter Beitrag vom 7. Okt 2005
Antwort Antwort
Seite 1 von 2  1 2      
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#1

Prüfen ob Image leer ?

  Alt 6. Okt 2005, 14:15
Ich habe eine TImage Komponente auf einem Formular.
Wie kann ich nun beim Initialisieren des Formulars prüfen ob dem TImage schon eine Grafik zugeordnet ist ?

etwa so ... (if TImage1.Picture.Bitmap = nil then LoadFromFile ...)

funktioniert so aber nicht !
  Mit Zitat antworten Zitat
lizardking

Registriert seit: 2. Sep 2005
76 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Prüfen ob Image leer ?

  Alt 6. Okt 2005, 14:44
Zitat von needatip:
funktioniert so aber nicht !
Kann ja auch nicht ;) Die TImage-Komponente wird ja initialisiert und somit auch ein Bitmap instanziiert. Du kannst aber einfach die Breite bzw. Hoehe des Bitmaps abfragen. Duerfte beides 0 sein, wenn noch kein Bild geladen wurde.
  Mit Zitat antworten Zitat
Benutzerbild von trifid
trifid

Registriert seit: 12. Sep 2003
297 Beiträge
 
#3

Re: Prüfen ob Image leer ?

  Alt 6. Okt 2005, 14:47
TBitmap.Empty
  Mit Zitat antworten Zitat
lizardking

Registriert seit: 2. Sep 2005
76 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Prüfen ob Image leer ?

  Alt 6. Okt 2005, 15:01
Zitat von trifid:
TBitmap.Empty
*huestl*

Nun ja, waere vielleicht auch 'ne Loesung ;)
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: Prüfen ob Image leer ?

  Alt 7. Okt 2005, 09:35
Ok, hab ich so eingebaut.

Ich lade im DataChange-Ereignis einer DataSource die Jpeg-Bilder in das Image.
if FileExists(Bild) then Image1.Picture.LoadFromFile(BILD)... Ich bekomme jetzt aber einen Laufzeitfehler wenn ich folgendes im Form.FormActivate Ereignis schreibe:
if Image1.Picture.Graphic.Empty then... Mit if Image1.Picture.Bitmap.Empty then... hat es gar nicht funktioniert.
Muss ich hier noch was initalisieren ?
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#6

Re: Prüfen ob Image leer ?

  Alt 7. Okt 2005, 10:02
Ist vielleicht das Image noch gar nicht erzeugt worden (z.b. direkt nach dem Start)? Dann kommt es zu einer Zugriffsverletzung.
Alexander
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Prüfen ob Image leer ?

  Alt 7. Okt 2005, 10:11
Ich habe das bereits von der VCL in mein Formular eingefügt.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#8

Re: Prüfen ob Image leer ?

  Alt 7. Okt 2005, 10:18
Wann genau kommt denn die Exception?
Alexander
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#9

Re: Prüfen ob Image leer ?

  Alt 7. Okt 2005, 10:33
Hi,

was für einen Laufzeitfehler bekommst du denn überhaupt? Eine AccessViolation oder was anderes? Was genau wird denn da gesagt. Ansonsten hat Alexander ja schon gefragt wo genau die kommt, mal mit Breakpoints die Stelle gesucht?

Gruß Der Unwissende
  Mit Zitat antworten Zitat
needatip

Registriert seit: 11. Jan 2004
246 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: Prüfen ob Image leer ?

  Alt 7. Okt 2005, 11:21
Ich bekomme eine AccessViolation.
Habe Breakpoint vor dem Befehl
if Image1.Picture.Graphic.Empty then... gesetzt.
Beim Einzelschritt auf diesem Befehl tritt dann die o.g. Zugriffsverletzung auf.
Diese erhalte ich aber eben nur bei leerem Image; d.h. wenn ich das Formular öffne und dem Image ist noch nichts zugewiesen.
Ich bekomme aber keine Fehlermeldung, wenn bereits eine Grafik im Image vorhanden ist.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 04:35 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