ICON Test für Image

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

ICON Test für Image

Beitrag von Velindos »

Hallo Leute,

weil mein SW ziemlich lang zum Starten braucht, sprich es werden Bilde eingelesen und Resized, wollte ich meine
ButtonimageGadget auf Icon´s umstellen. Also erstellte ich mir Icon´s die ich wie folgt Lade!
; ------------------

Code: Alles auswählen

;
{ Variante 1:
Global ICO_Player_Stop = CatchImage(#PB_Any,?ICO_Player_Stop)
DataSection:
  ICO_Player_Stop:
  IncludeBinary "D:\[Pure@API]\[STORE]\ICO\API_Player_Stop.ico"
EndDataSection
; ------------------
If OpenWindow(0, 0, 0, 120, 100, "ButtonImage", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  ButtonImageGadget(0, 10, 10, 100, 83, ImageID(ICO_Player_Stop))
  Repeat
  Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
;}
; ------------------
Nun werden mir die Icon´s angezeigt, aber nicht in der maximalen Buttongrösse, sondern kleiner, obwohl ich das Icon.ico in verschiedenen Formaten gespeichert habe!

Jemand eine Idee was hier fehlt oder wie die Grösser werden?

Gruss ... Velindos!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Benutzeravatar
Sicro
Beiträge: 955
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: ICON Test für Image

Beitrag von Sicro »

Wie groß sind den die ursprünglichen Bilder, dass das Programm so lange zum Starten braucht?

Mit PB-Bordmitteln kannst du bei ICO-Dateien keine bestimmten Größen laden -- auch die Größenangabe bei CatchImage() bringt leider hier nichts.

Auf die Schnelle kann ich dir nur das Modul FileInfo[Win].pbi anbieten, dass eine Funktion GetIcon(File$, IconSize, StretchIcon=#False) hat, aber die funktioniert nur mit externen ICO-Dateien:

Code: Alles auswählen

IncludeFile "FileInfo[Win].pbi"

iconSize = 48 ; 16 ; 32 ; ...
stretchIcon = #True ; Falls Größe im ICO nicht vorhanden, strecke es auf die Größe
ICO_Player_Stop = FileInfo::GetIcon("Pfad zur API_Player_Stop.ico", iconSize, stretchIcon)
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
Velindos
Beiträge: 598
Registriert: 15.11.2010 10:56

Re: ICON Test für Image

Beitrag von Velindos »

Hallo,
Danke für deinen Tipp. Habe bereits selbiges festgestellt beim Laden der Images, weil immer das kleinste Icon kommt. Dann bleibe ich bei meiner Lösung, die Icon auf das Buttonformat(xy30/xy22) laden. Somit fällt das Resized weg!
Beschleunigt die Sache und lässt sich momentan schneller Lösen!

Gruss... Velindos

PS: Super dein Purebasic Darkschema, Danke fürs Teilen!
Windows 7/8/8.1/10 (32/64-Bit) |Ubuntu 10.4 (64-Bit) |Purebasic 5.71 LTS (32/64-Bit)
Antworten