Seite 1 von 1
WinAPI: Wie PopUp-Menütext fett darstellen?
Verfasst: 10.04.2009 07:35
von Regenduft
Moooin,
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!)
Verfasst: 10.04.2009 11:27
von Fabian A.
Aus dem Code-Archiv:
Code: Alles auswählen
; 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
Gruß Fabian
[/code]
Verfasst: 10.04.2009 18:14
von Andesdaf
hier noch ein weiterer Thread zum Thema (Suchfunktion

)
Verfasst: 10.04.2009 21:07
von Regenduft
Bin wohl zu doof zum richtig suchen...
Danke Fabian A.!

Verfasst: 11.04.2009 10:31
von Andesdaf
ich wollt natürlich noch den Link mit geben:
http://www.purebasic.fr/german/viewtopi ... highlight=
(hab ich oben vergessen

)
Verfasst: 17.04.2009 14:26
von Regenduft
Thx Andesdaf!
Eine kleine Sache ist mir noch aufgefallen:
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.
Code: Alles auswählen
SetMenuItemInfo_(MenuID(Munu), MenuItem, #True, @bold) ; <- Original (ByPosition)
SetMenuItemInfo_(MenuID(Menu), MenuItem, #False, @bold) ; <- MenuItemID-Variante (ByPosition)
PS: Sorry für die laienhafte Ausdrucksweise
PPS: Ich frage mich warum ich den Link nicht fand! Kommen alle wichtigen Schlagworte drin vor...
Verfasst: 19.04.2009 14:32
von Andesdaf
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...