Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Bild wird nicht gefunden (https://www.delphipraxis.net/199613-bild-wird-nicht-gefunden.html)

Schwalbe.Pilot 6. Feb 2019 09:38

Delphi-Version: 5

Bild wird nicht gefunden
 
Hallo zusammen,

ich habe folgendes Problem, und zwar wir ein Bild für einn Knopf nicht geladen, obwohl dieser im Ordner gespeichert ist. Es wir mir immer 'Unable to opne file 'AB1'' angezeigt.

Ich hab es ursprünlich mit der Anfängervariante (bin ja selber erst Anfänger....:stupid:) probiert, also:
Delphi-Quellcode:
AufgabenHUD.Glyph.loadfromfile('AB1')
als auch mit einer anderen Variante die mir vorgeschlagen worden ist.
Delphi-Quellcode:
var
   FileName: String;
   Path: String;
begin
     FileName := Application.ExeName;
     Path := ExtractFilePath(FileName);
AufgabenHUD.Glyph.loadfromfile(Path +'AB1');
Wie bekomme ich hin, das das Bild geladen wird?

Und ich hab noch eine weitere Frage, und zwar hab ich Pfeile zum weiterschalten als BMP gespeichert, wie bekomme ich es hin, dass normalerweise transparete nicht weiter grau bleibt? Hier hab ich auch schon ausgewählt, dass das Bild transparent sein soll, aber es klappt nicht.:?


Danke schon mal für eure Zeit und einen schönen Tag
Grüße vom Schalbe Pilot

PS.: Benutze Lazarus und nicht Delphi 5

Pfaffe 6. Feb 2019 10:53

AW: Bild wird nicht gefunden
 
Mache mal eine Zeile mit
Showmessage(Path +'AB1');
vor die Zeile AufgabenHUD.Glyph.loadfromfile(Path +'AB1');
Der Befehl IncludeTrailingPathDelimiter wäre wahrscheinlich sinnvoll.

Bzgl. Transparent versuch mal
AufgabenHUD.Transparent:= true; oder AufgabenHUD.Glyph.Transparent:= true;

Ich selbst habe kein Lazarus.

Moombas 6. Feb 2019 10:54

AW: Bild wird nicht gefunden
 
schon mal mit Dateiendung probiert? also z.B. 'AB1.jpg' (oder welches Format dein Bild auch immer hat)
Delphi-Quellcode:
AufgabenHUD.Glyph.loadfromfile(Path +'AB1.jpg');
Ich glaube nicht das deine Datei keine Endung hat.

Schwalbe.Pilot 6. Feb 2019 10:57

AW: Bild wird nicht gefunden
 
Zitat:

Zitat von Moombas (Beitrag 1424834)
schon mal mit Dateiendung probiert? also z.B. 'AB1.jpg' (oder welches Format dein bild auch immer hat)
Delphi-Quellcode:
AufgabenHUD.Glyph.loadfromfile(Path +'AB1.jpg');

Danke das hat funktioniert, sonst hat es auch immer ohne funktioniert, zumindets bei dem Rest des Programms. Hätte nicht an sowas gedacht.:stupid:

Ich danke euch beiden.

Weiß zufällig einer von euch noch wie man die grauen Ränder der BMP datei wegbekommt?

Andreas L. 6. Feb 2019 10:59

AW: Bild wird nicht gefunden
 
Zitat:

Zitat von Pfaffe (Beitrag 1424833)
Der Befehl IncludeTrailingPathDelimiter wäre wahrscheinlich sinnvoll.

ExtractFilePath hängt (unter Delphi, sehr wahrscheinlich auch unter Lazarus) immer einen Backslash an. Also ist IncludeTrailingPathDelimiter nicht notwendig.

Welches Format hat deine Datei? BMP, PNG, GIF, ...

Da in deinem Dateinamen keine Dateiendung enthalten ist kann es vielleicht sein das die Komponente nicht weiß wie sie die Datei verarbeiten soll.

Um welche Komponente handelt es sich? TButton?

Schwalbe.Pilot 6. Feb 2019 11:01

AW: Bild wird nicht gefunden
 
Zitat:


Welches Format hat deine Datei? BMP, PNG, GIF, ...

Da in deinem Dateinamen keine Dateiendung enthalten ist kann es vielleicht sein das die Komponente nicht weiß wie sie die Datei verarbeiten soll.

Um welche Komponente handelt es sich? TButton?
Es ist eine BMP und es handelt sich um einen TSpeedButton.

Moombas 6. Feb 2019 11:02

AW: Bild wird nicht gefunden
 
Zitat:

Zitat von Schwalbe.Pilot (Beitrag 1424835)
Zitat:

Zitat von Moombas (Beitrag 1424834)
schon mal mit Dateiendung probiert? also z.B. 'AB1.jpg' (oder welches Format dein bild auch immer hat)
Delphi-Quellcode:
AufgabenHUD.Glyph.loadfromfile(Path +'AB1.jpg');

Danke das hat funktioniert, sonst hat es auch immer ohne funktioniert, zumindets bei dem Rest des Programms. Hätte nicht an sowas gedacht.:stupid:

Ich danke euch beiden.

Weiß zufällig einer von euch noch wie man die grauen Ränder der BMP datei wegbekommt?

Also ich würde generell immer die Endung mit angeben, dann erlebst du auch keine bösen Überraschungen.

Sherlock 6. Feb 2019 11:03

AW: Bild wird nicht gefunden
 
Um die Sache abzurunden, empfehle ich grundsätzlich für das Zusammensetzen von Pfaden Delphi-Referenz durchsuchenSystem.IOUtils.TPath.Combine zu verwenden. Das geht plattformübergreifend immer gut.

Sherlock

Schwalbe.Pilot 6. Feb 2019 11:06

AW: Bild wird nicht gefunden
 
Zitat:

Zitat von Sherlock (Beitrag 1424839)
Um die Sache abzurunden, empfehle ich grundsätzlich für das Zusammensetzen von Pfaden Delphi-Referenz durchsuchenSystem.IOUtils.TPath.Combine zu verwenden. Das geht plattformübergreifend immer gut.

Sherlock

Danke das werde ich mir mal anschauen.

Andreas L. 6. Feb 2019 11:08

AW: Bild wird nicht gefunden
 
Zitat:

Zitat von Schwalbe.Pilot (Beitrag 1424837)
Delphi-Quellcode:
AufgabenHUD.Glyph.loadfromfile(Path +'AB1.jpg');

Dann sollte es aber so lauten:
Delphi-Quellcode:

AufgabenHUD.Glyph.loadfromfile(Path +'AB1.bmp'); // <-- BMP für Bitmaps!

Ich habe mir vor einigen Jahren angewöhnt vor dem Komponenten-Namen ein Kürzel zu tippen das mir zeigt um welches Control es sich handelt. Z. B.
  • btnSpeichern (TButton)
  • edtDateiname (TEdit)
  • pnlSeitenContainer (TPanel)
  • etc.

Vielleicht wäre das auch für dich von Vorteil. Würde ich an deiner Stelle machen :coder:


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:40 Uhr.
Seite 1 von 2  1 2      

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