MenuItem(MenuItemID, Text$) -> Text nachträglich ändern

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Delle
Beiträge: 1130
Registriert: 10.05.2005 22:48

MenuItem(MenuItemID, Text$) -> Text nachträglich ändern

Beitrag von Delle »

Hallo,

wie kann ich es am Besten anstellen, wenn auf User "Andreas" geklickt wird, eine PopupMenu erscheint und dort in den Menüpunkten nicht
nur "Nachricht senden" dastehen soll sondern "Nachricht an Andreas senden"?

Sprich wie kann man nachträglich die Texte ändern?
Benutzeravatar
wichtel
Beiträge: 150
Registriert: 09.09.2004 08:35
Wohnort: Hattersheim

Beitrag von wichtel »

Code: Alles auswählen

; change Text of a Menu Item

OpenWindow(0, 0,0, 100, 100, #PB_Window_Screencentered|#PB_Window_SystemMenu, "Menu")

hMenu.l = CreateMenu(1, WindowID())  ; you need to save the Handle to the Menu like this.

  MenuTitle("Test")   
  MenuItem(5, "Click to change...")  ; add an Item (Number doesn't matter)

Repeat
  Select WaitWindowEvent()
    Case #PB_Eventclosewindow: End
    Case #PB_EventMenu               ; Item was clicked.
      
      Text.s = "changed."             ; new Text
      ModifyMenu_(hMenu, 5, #MF_BYCOMMAND | #MF_STRING, 0, @Text) 
        ; Set new Text:
        ; fist one is the Handle you got from CreateMenu()
        ; second one is the Item Number from MenuItem()
        ; last one is the String Pointer
        ; the other ones just need to be like that.
      
  EndSelect
ForEver


; ExecutableFormat=Windows
; EOF
purearea.net ist dein Freund.
PB / jaPBe jeweils aktuellste Version, seit 3.62 dabei, XP sp3 de/en & W7 en
Antworten