Seite 1 von 2

[Gelöst] MenuTitle deaktivieren...

Verfasst: 11.08.2007 10:17
von SimonSimCity
Ich weiß schon, wie ich z.B. unter Datei den Eintrag Neu deaktivieren kann, aber wie ich das Ganze Menue Datei ausblenden kann...

Noch mal für Programmierer:

MenuItem() - DisableMenuItem()
MenuTitle() - ????

War das verständlich??

Verfasst: 11.08.2007 13:26
von dysti

Verfasst: 11.08.2007 13:50
von SimonSimCity
Hier ist ein kleiner Beispielcode:

Code: Alles auswählen

If OpenWindow(0, 216, 0, 602, 302, "New window ( 0 )")
  If CreateMenu(1, WindowID(0))
    MenuTitle("Datei")
     MenuItem(2, "Open")
    MenuTitle("Testversteck")
     MenuItem(3, "Test mich mal")
    CreateGadgetList(WindowID(0))
     ButtonGadget(5, 60, 90, 140, 80, "Verstecker")
  EndIf
EndIf

Repeat: Until WaitWindowEvent() = #PB_Event_CloseWindow
Und wenn ich auf den Button "Verstecker" klicke, dann soll das MenuTitel "Titelversteck" einfach verschwinden.
Ihr braucht das nicht mit einem Menupunkt dahinter versuchen, der dann an diese Stelle rücken soll.... Dass soll nur der letzte MenuPunkt sein, der bei einer bestimmten Aktion erscheint und bei einer bestimmten (anderen) Aktion dann wieder verschwindet.

Verfasst: 11.08.2007 13:51
von SimonSimCity
Oder deaktivieren würde mir auch schon reichen...

Verfasst: 11.08.2007 14:17
von HeX0R

Code: Alles auswählen

If OpenWindow(0, 216, 0, 602, 302, "New window ( 0 )")
	If CreateMenu(1, WindowID(0))
		MenuTitle("Datei")
		MenuItem(2, "Open")
		MenuTitle("Testversteck")
		MenuItem(3, "Test mich mal")
		CreateGadgetList(WindowID(0))
		ButtonGadget(5, 60, 90, 140, 80, "Verstecker")
	EndIf
EndIf

Repeat
	Select WaitWindowEvent()
		Case #PB_Event_CloseWindow
			Break
		Case #PB_Event_Gadget
			EnableMenuItem_(MenuID(1), 1, #MF_BYPOSITION | #MF_GRAYED)
			DrawMenuBar_(WindowID(0))
	EndSelect
ForEver
Übrigens hättest du, wenn du den Links gefolgt wärst und evtl. dich noch ins MSDN bemüht hättest, locker flockig selbst drauf kommen können.
Das hat mich jetzt 2 Minuten gekostet.

Verfasst: 11.08.2007 16:26
von Andreas
zum richtigen "verstecken" würde ich einfach 2 Menüs anlegen und zwischen den beiden umschalten.

Code: Alles auswählen

If OpenWindow(0, 216, 0, 602, 302, "New window ( 0 )")
  If CreateMenu(1, WindowID(0))
    MenuTitle("Datei")
    MenuItem(2, "Open")
    MenuTitle("Testversteck")
    MenuItem(3, "Test mich mal")
    MenuTitle("Nachrücker")
    CreateGadgetList(WindowID(0))
    ButtonGadget(5, 60, 90, 140, 80, "Verstecker")
    ButtonGadget(6, 200, 90, 140, 80, "Zeiger")
  If CreateMenu(2, WindowID(0))
    MenuTitle("Datei")
    MenuItem(2, "Open")
    MenuTitle("Nachrücker")
  EndIf
  EndIf
EndIf

SetMenu_(WindowID(0),MenuID(1))

Repeat
  Select WaitWindowEvent()
  Case #PB_Event_CloseWindow
    Break
  Case #PB_Event_Gadget
    Select EventGadget()
    Case 5
      SetMenu_(WindowID(0),MenuID(2))
    Case 6
      SetMenu_(WindowID(0),MenuID(1))
    EndSelect
  EndSelect
ForEver

Verfasst: 11.08.2007 17:44
von Fluid Byte
zum richtigen "verstecken" würde ich einfach 2 Menüs anlegen und zwischen den beiden umschalten.
Das funktioniert nur für statische Menüs.

Verfasst: 11.08.2007 18:16
von Andreas
Fluid Byte hat geschrieben:Das funktioniert nur für statische Menüs.
??? Statische Menüs ???

Was soll das denn sein ?

Verfasst: 11.08.2007 18:26
von Fluid Byte
Andreas hat geschrieben:
Fluid Byte hat geschrieben:Das funktioniert nur für statische Menüs.
??? Statische Menüs ???

Was soll das denn sein ?
Das Gegenteil von dynamisch. Bild

Verfasst: 11.08.2007 18:28
von Andreas
Es gibt nur 2 Arten von Menüs.
Fenstermenüs und Popup-Menüs.

Was ist also ein dynamisches Menü und was ist ein statisches Menü ?