PopUpMenu mit FETTEN MenuItems

Für allgemeine Fragen zur Programmierung mit PureBasic.
real
Beiträge: 468
Registriert: 05.10.2004 14:43

PopUpMenu mit FETTEN MenuItems

Beitrag von real »

Hi,

wie kann ich in einem PopUpMenu ein MenuItem fett darstellen?

Gruß
René
Benutzeravatar
wichtel
Beiträge: 150
Registriert: 09.09.2004 08:35
Wohnort: Hattersheim

Beitrag von wichtel »

aus dem englishen Forum von GreenGiant:

Code: Alles auswählen

#MIIM_STATE=1 
#MFS_DEFAULT=4096 

OpenWindow(0,0,0,400,400,#PB_Window_SystemMenu | #PB_Window_ScreenCentered,"test") 
CreatePopupMenu(0) 
MenuItem(0,"Normal1") 
MenuItem(1,"Normal2") 
MenuItem(2,"Bold") 
MenuItem(3,"Normal3") 

bold.MENUITEMINFO 
bold\cbSize=SizeOf(bold) 
bold\fMask=#MIIM_STATE 
bold\fState=#MFS_DEFAULT 
SetMenuItemInfo_(MenuID(),2,#True,bold) ;2 specifies the item to be made bold 

Repeat 
ev=WaitWindowEvent() 
  If ev=#WM_RBUTTONUP 
    DisplayPopupMenu(0,WindowID(0)) 
  EndIf 
Until ev=#PB_Event_CloseWindow
PB / jaPBe jeweils aktuellste Version, seit 3.62 dabei, XP sp3 de/en & W7 en
real
Beiträge: 468
Registriert: 05.10.2004 14:43

Beitrag von real »

Cool! Danke :D *freu*
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

Einfacher sollte es aber auch mit SetMenuDefaultItem_() gehen, habe es probiert, kriege aber nur Befehle in der MenuBar Fett, keine Items. Weiß einer wie es gehen könnte?
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag von Falko »

Ich glaube, das ist jetzt missverstanden. Mache mal trotzdem erstmal den obigen Code mit "default" dazu. Oder bezog sich das auf den Menütitel?

Code: Alles auswählen

MenuTitle("Project") 
MenuItem(0,"Default")
MenuItem(1,"Normal2") 
MenuItem(2,"Bold") 
MenuItem(3,"Normal3") 

bold.MENUITEMINFO 
bold\cbSize=SizeOf(bold) 
bold\fMask=#MIIM_STATE 
bold\fState=#MFS_DEFAULT 
SetMenuDefaultItem_(MenuID(),0,0); Default auf 2. MenuItem
SetMenuItemInfo_(MenuID(),2,#True,bold) ;2 specifies the item to be made bold 

Repeat 
ev=WaitWindowEvent() 
  If ev=#WM_RBUTTONUP 
    DisplayPopupMenu(0,WindowID(0)) 
  EndIf 
Until ev=#PB_Event_CloseWindow 
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
wichtel
Beiträge: 150
Registriert: 09.09.2004 08:35
Wohnort: Hattersheim

Beitrag von wichtel »

@PBzecke: wieso, das tut es doch. Wirklich einfacher. Es sei denn du willst mehr als ein Item bold darstellen.
PB / jaPBe jeweils aktuellste Version, seit 3.62 dabei, XP sp3 de/en & W7 en
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

Ja, mit MenuID() funktioniert's. Ich hatte den Rückgabewert von CreateMenu() benutzt, da ich nicht wusste dass es ein MenuID() in PB gibt.

Habe ihn in der Hilfe jedenfalls nicht gefunden.
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Benutzeravatar
Andre
PureBasic Team
Beiträge: 1765
Registriert: 11.09.2004 16:35
Computerausstattung: MacBook Core2Duo mit MacOS 10.6.8
Lenovo Y50 i7 mit Windows 10
Wohnort: Saxony / Deutscheinsiedel
Kontaktdaten:

Beitrag von Andre »

PBZecke hat geschrieben:Ja, mit MenuID() funktioniert's. Ich hatte den Rückgabewert von CreateMenu() benutzt, da ich nicht wusste dass es ein MenuID() in PB gibt.

Habe ihn in der Hilfe jedenfalls nicht gefunden.
Hm, habe ich auch grade nochmal überprüft. Ist tatsächlich nicht vorhanden (auch nicht in der originalen englischen Anleitung)... :roll:

Werde das mit Fred noch klären, ob "nicht offizieller Befehl" oder bloß in der Hilfe vergessen. Dann wird dies natürlich nachgeholt...
Bye,
...André
(PureBasicTeam::Docs - PureArea.net | Bestellen:: PureBasic | PureVisionXP)
Benutzeravatar
PBZecke
Beiträge: 399
Registriert: 02.09.2004 17:34

Beitrag von PBZecke »

Nützlich ist er auf jeden Fall, wie man am Beispiel leicht erkennen kann!
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... :lol:
Antworten