Bin gerade am rätseln, wie sich mit WinAPI ein Popup-Menütext fett darstellen lässt.
Ich denke das müßte irgendwie mit ModifyMenu_() gehen und ich benötige irgendwie die #IDM_BOLD Konstante (Wert 52). Wie es aber funktioniert verstehe ich irgendwie überhaupt nicht.
Wäre schön, wenn mir da jemand weiterhelfen könnte!
(BTW: Sucht man mit Google nach "Wert IDM_BOLD", so findet man nur das PureBoard ... ich weiß, das ist ein komischer Suchausdruck, aber es hat funktioniert!)
; English forum: http://www.purebasic.fr/english/viewtopic.php?p=70325#70325
; Author: GreenGiant (updated for PB 4.00 by edel)
; Date: 26. September 2004
; OS: Windows
; Demo: No
#MIIM_STATE=1
#MFS_DEFAULT=4096
OpenWindow(0,0,0,400,400,"test",#PB_Window_SystemMenu | #PB_Window_ScreenCentered)
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(0),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
beim obrigen Code wird die Menü-Item Addressierung über "ByPosition" gemacht ("Schachfeld-Methode").
Man kann den Code aber auch einfach abändern, damit es via "ByCommand" funktioniert und man die MenuItemID übergeben kann.
Einfach bei SetMenuItemInfo() das #True in #False ändern.
Regenduft hat geschrieben:PPS: Ich frage mich warum ich den Link nicht fand! Kommen alle wichtigen Schlagworte drin vor...
Tja, die Hilfe mag nicht jeden...
Regenduft hat geschrieben:Man kann den Code aber auch einfach abändern, damit es via "ByCommand" funktioniert und man die MenuItemID übergeben kann.
Einfach bei SetMenuItemInfo() das #True in #False ändern.
ja, das kann man ändern. Gleich mal umwurschdeln...