Menu Icons mit MaxGUI ?

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

danielos

Betreff: Menu Icons mit MaxGUI ?

BeitragSa, Sep 20, 2008 12:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo zusammen,

ist es mit MaxGUI mittlerweile möglich, kleine Icons zu Menüeinträgen hinzuzufügen ?
Ich habe einen Thread dazu gefunden, aber der ist schon über 2 Jahre alt... Smile

MfG Danielos

d-bug

BeitragSa, Sep 20, 2008 14:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit...
Code: [AUSKLAPPEN]
SetGadgetPixmap (Pixmap:TPixmap, GADGET_PIXMAPICON)

...sollte das wohl gehen! Hab es aber selbst noch nicht ausprobiert. Du solltest dazu übrigens auf die SVN Version upgedated haben (**klick**), denn es ist in der normalen Download-Version von blitzbasic.com noch nicht implementiert!
 

danielos

BeitragSa, Sep 20, 2008 14:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Suuuper vielen Dank, funktioniert Very Happy
 

danielos

Betreff: Argh....

BeitragSa, Sep 20, 2008 16:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Vorher habe ichs hingekriegt, aber jetz funktionierts leider nicht mehr....
Was mache ich falsch ?

Code: [AUSKLAPPEN]

Import maxgui.drivers
Strict

Global Pixmap:TPixmap=LoadPixmap("resource\icon.bmp")


Global mainwindow:TGadget=createwindow("",300,300,300,300,desktop())
Global filemenu:TGadget=CreateMenu("Datei",0,WindowMenu(mainwindow))
Global filenew:TGadget=CreateMenu("Neu",101,filemenu,KEY_N,MODIFIER_COMMAND)


updatewindowmenu mainwindow

SetGadgetPixmap (filemenu,pixmap)



While WaitEvent()<>EVENT_WINDOWCLOSE
Wend



Was für ein Format muss die Pixmap-Datei denn haben ? Ich habs mit ICO und BMP probiert...
Und wie groß müssen die sein ?
Wie gesagt, vorher hats iwie funktioniert....
*schluchz* Confused

MfG Daniel

YellowRider

Ehemaliger Admin

BeitragSa, Sep 20, 2008 16:46
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich denke mal, du musst die Pixmap für filenew setzen, nicht für filemenu.
 

danielos

BeitragSa, Sep 20, 2008 16:57
Antworten mit Zitat
Benutzer-Profile anzeigen
das hatte ich vorher eingestellt... hab schon einige kobinationen durchprobiert...
ich glaube, es kann nur an der pixmap-datei selbst liegen...leider weß ich nicht mehr, welche ich beim ersten versuch (der ja funktioniert hatte) benutzt hab...
 

danielos

BeitragSa, Sep 20, 2008 17:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Embarassed Embarassed Embarassed

Oh mann bin ich blöd ^^

ich hab mich die ganze Zeit über bei dem Ordnernamen verschrieben ("rescource" Sad )
sry!

danke an alle, die geantwortet haben...

MfG Daniel
 

jsp

BeitragSa, Sep 20, 2008 17:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Hier auch noch mal ein Beispiel mit PixmapFromIconStrip, um mehrere Icons in einen Strip zusammen zu fassen.

Code: [AUSKLAPPEN]
SuperStrict

Import MaxGui.Drivers

Local IconStrip0:TIconStrip = LoadIconStrip:TIconStrip(LoadBank("http::www.logiczone.de/jsp/downloads/EnableDisable.bmp"))

Local Window1:TGadget = CreateWindow:TGadget("Window1",305,145,288,123,Null,WINDOW_TITLEBAR|WINDOW_RESIZABLE |WINDOW_MENU |WINDOW_STATUS |WINDOW_CLIENTCOORDS )
   Local Window1_TestMenu:TGadget = CreateMenu( "TestMenu" , 100 , WindowMenu( Window1:TGadget ) )
      Local Window1_Enable:TGadget = CreateMenu( "Enable" , 101 , Window1_TestMenu:TGadget  )
          SetGadgetPixmap( Window1_Enable:TGadget,PixmapFromIconStrip(IconStrip0,1) )
      Local Window1_Disable:TGadget = CreateMenu( "Disable" , 102 , Window1_TestMenu:TGadget  )
          SetGadgetPixmap( Window1_Disable:TGadget,PixmapFromIconStrip(IconStrip0,0) )
   UpdateWindowMenu( Window1:TGadget )

Repeat
   WaitEvent()
   Select EventID()
      Case EVENT_WINDOWCLOSE
         Select EventSource()
            Case Window1   Window1_WC( Window1:TGadget )
         End Select

      Case EVENT_MENUACTION
         Select EventData()
            'Menu_Events for Gadget = Window1
            Case 101   Window1_Enable_MA( Window1:TGadget , Window1_TestMenu:TGadget , Window1_Enable:TGadget )
            Case 102   Window1_Disable_MA( Window1:TGadget , Window1_TestMenu:TGadget , Window1_Disable:TGadget )
         End Select

   End Select
Forever

Function Window1_WC( Window:TGadget )
   DebugLog "Window Window1 wants to be closed"
'   HideGadget( Window:TGadget )

   End
End Function

Function Window1_Enable_MA( Window:TGadget , Parent:TGadget , Menu:TGadget )
   DebugLog "Menu Enable was selected from Window Window1"
   
End Function

Function Window1_Disable_MA( Window:TGadget , Parent:TGadget , Menu:TGadget )
   DebugLog "Menu Disable was selected from Window Window1"
   
End Function
Logic Gui Professional a Gui Designer for MaxGui
 

danielos

BeitragSa, Sep 20, 2008 18:13
Antworten mit Zitat
Benutzer-Profile anzeigen
also bei mir funktioniert dieser code nicht... "Identifer "PixmapFromIconstrip" not found"
 

jsp

BeitragSa, Sep 20, 2008 18:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Hast du evtl. noch eine aeltere Version von MaxGui?
Hab grad noch mal nach gesehen:

Renamed ExtractIconPixmapFromStrip() to PixmapFromIconStrip()
ist beim Worklog von Seb vom 9.6.08 eingetragen (Punkt 5)

und funzt hier wie erwartet.

Kannst ja sonst noch mal den alten Namen ExtractIconPixmapFromStrip() probieren.
Logic Gui Professional a Gui Designer for MaxGui
 

danielos

BeitragSa, Sep 20, 2008 18:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Bingo! Danke Smile

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group