Seite 1 von 1
GetGadgetAttribute beim ButtonImageGadget
Verfasst: 20.05.2008 21:32
von RSBasic
Hallo,
Ich steh' grad' auf 'm Schlauch!
Entweder ist das ein Bug oder ich mach' irgendwas falsch.
Code: Alles auswählen
If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(0))
ButtonImageGadget(1,10,10,100,20,LoadImage(1,"Test.bmp",0),0)
EndIf
Debug GetGadgetAttribute(1,#PB_Button_Image)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Ist GetGadgetAttribute() nicht dazu dar, die ImageID zu ermitteln?
Wieso funktioniert das nicht?
Verfasst: 20.05.2008 21:41
von edel
Was bekommst du als Ergebnis ?
Welche PB Version ?
Ist das Bild ueberhaupt da?
Verfasst: 20.05.2008 21:42
von Ligatur
Hallo,
Du machst was falsch. LoadImage() gibt nicht die von ButtonImageGadget geforderte Image - ID zurück sondern einen beliebigen Wert ungleich 0 für OK und 0 für Fehler.
Verfasst: 20.05.2008 21:43
von ts-soft
Nachdem ich den Source so angepaßt habe, das er für jeden ohne Aufwand
testbar ist, konnte ich keine Fehler bemerken
Code: Alles auswählen
If OpenWindow(0,0,0,500,250,"Window",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(0))
ButtonImageGadget(1,10,10,100,20,LoadImage(1, #PB_Compiler_Home + "Examples\Sources\Data\File.bmp",0),0)
EndIf
Debug GetGadgetAttribute(1,#PB_Button_Image)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf
Also ist Dein Bild kaputt oder nicht vorhanden.
Gruß
Thomas
Verfasst: 20.05.2008 21:48
von edel
Du machst was falsch. LoadImage() gibt nicht die von ButtonImageGadget geforderte Image - ID zurück sondern einen beliebigen Wert ungleich 0 für OK und 0 für Fehler.
LoadImage gibt wie fast jede andere Funktion, ein HANDLE
zurueck, solange es nicht mit #pb_any aufgerufen wird. Es
kann also genauso benutzt werden.
Verfasst: 20.05.2008 21:52
von RSBasic
@All
Blöd von mir, habs vergessen...
Also ich bekomme: 201657141
Aber ich wollte eigentlich die PB-Image-Nummer haben:
LoadImage(1, #PB_Compiler_Home...
Wie kann man die Nummer ermitteln?
Verfasst: 20.05.2008 21:58
von edel
Mit PB gar nicht, zumindest solange du die ID nicht mit dem HANDLE
verknuepfst, z.B. ueber eine LL oder die Objektliste durchlaeufst.
Verfasst: 20.05.2008 21:59
von ts-soft
Mit PB mitteln garnicht, aber die brauchste ja eigentlich nicht, das Handle
reicht doch, nur statt ImageID(bla) nur bla
Verfasst: 20.05.2008 22:00
von RSBasic
Okay danke Leute für eure Hilfe
Ihr seid ja mal wieder schnell
