Große Symbole im Menü?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Große Symbole im Menü?

Beitrag von Programie »

Hi,

Wenn ich unter Windows Vista größere Symbole in einem Menü eines Fensters (z.B. 48 x 48 px), kann ich einfach mit CreateImage() ein Bild erstellen, da drauf zeichnen und mit der WinAPI-Funktion SetMenuItemBitmaps_() das Bild in das Menü reinmachen.
Wenn ich das Programm dann aber unter Windows XP starte, sind die Symbole zwar in der Größe, aber es wird nur der obere linke Teil (Ich glaub 16 x 16 Pixel) von dem Bild angezeigt.
Woran liegt das?


Hier der Code:

Code: Alles auswählen

ImageID=CatchImage(0,?Icon)

If OpenWindow(0,100,100,500,300,"MenuIcon")
 If CreateMenu(0,WindowID(0))
  MenuTitle("Test")
  For IconSize=8 To 64 Step 8
   Image=CreateImage(#PB_Any,IconSize,IconSize)
    If IsImage(Image)
     If StartDrawing(ImageOutput(Image))
      Box(0,0,IconSize,IconSize,GetSysColor_(#COLOR_MENU))
      DrawImage(ImageID,0,0,IconSize,IconSize)
      StopDrawing()
     EndIf
    EndIf
   MenuItem(IconSize,Str(IconSize)+" x "+Str(IconSize)+" px")
   SetMenuItemBitmaps_(MenuID(0),iconSize,#MF_BYCOMMAND,ImageID(Image),ImageID(Image))
  Next
 EndIf
 Repeat:Until WaitWindowEvent()=16
EndIf
Hier noch zwei Screenshots (Vista und XP):
Windows Vista
Windows XP
Zuletzt geändert von Programie am 14.10.2008 22:20, insgesamt 1-mal geändert.
BildBildBildBild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Keine Ahnung woran das liegt, sieht sowieso schrecklich aus :mrgreen:
Aber Deinen Code sollteste besser in testbarer Form posten, indem Du die
erste Zeile z.B. so abänderst:

Code: Alles auswählen

ImageID=LoadImage(0, #PB_Compiler_Home + "Examples\Sources\Data\CdPlayer.ico")
Oder Datazeilen, Malen usw., nur so als Hinweis :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Programie
Beiträge: 1280
Registriert: 06.08.2005 22:56
Computerausstattung: https://www.sysprofile.de/id160800
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von Programie »

Jajaja :mrgreen:

Nie mach ich mal was richtig. :lol:
BildBildBildBild
Benutzeravatar
Frabbing
Beiträge: 160
Registriert: 15.02.2007 21:31
Kontaktdaten:

Re: Große Symbole im Menü?

Beitrag von Frabbing »

Hi,

ich möchte das Thema nochmal aufgreifen. Gibt es eine einfache Möglichkeit in Menüs z.B. 32x32 große Icons oder Bitmaps komplett anzuzeigen?
Gruß, Frank
Benutzeravatar
Frabbing
Beiträge: 160
Registriert: 15.02.2007 21:31
Kontaktdaten:

Re: Große Symbole im Menü?

Beitrag von Frabbing »

Hat jemand denn eine kompliziertere Lösung parat? 8)
Gruß, Frank
Antworten