Mit Button Fenster öffnen

Anfängerfragen zum Programmieren mit PureBasic.
BginnR
Beiträge: 39
Registriert: 06.12.2008 19:44
Kontaktdaten:

Mit Button Fenster öffnen

Beitrag von BginnR »

Wie kann man indem man einen Button drückt ein anderes Fenster öffnen??
Need hlp
(edit)
:cry:
Kann mir denn niemand helfen??
:cry:
(edit)
PB 3.30
PB 4.30 Demo
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

http://www.purebasic.fr/german/viewtopi ... 360#133360
http://www.purebasic.fr/german/viewtopi ... 793#222793
http://www.purebasic.fr/german/viewtopi ... 133#230133

Code: Alles auswählen

;*********************************************************
;*** MoreWindows.pb
;***
;*** Example for use of EventWindow()
;*** to handle multiple Windows
;*** without child/parent
;***
;*** Dec.22, 2006  Kaeru Gaman
;***
;*** PB Ver 4.02 Win
;*********************************************************
EnableExplicit
;*************************************
Enumeration     ;Windows
  #Win_Main
  #Win_Sub1
  #Win_Sub2
  #Win_Sub3
  #Win_Sub4
EndEnumeration
;*************************************
Enumeration     ;Gadgets
  #Main_But_LaunchSub1
  #Main_But_LaunchSub2
  #Main_But_LaunchSub3
  #Main_Txt_Display
  #Sub1_But_TestBeep 
  #Sub2_But_TestBeep 
  #Sub3_But_LaunchSub4
  #Sub4_Opt_Text1
  #Sub4_Opt_Text2
  #Sub4_Opt_Text3
EndEnumeration
;*************************************
 Procedure OpenSub1()
  OpenWindow(#Win_Sub1, -1, -1, 200,150,"Sub1",#PB_Window_ScreenCentered | #PB_Window_SystemMenu )
    CreateGadgetList(WindowID(1))
      ButtonGadget(#Sub1_But_TestBeep,10,10,60,20,"Beep Deep")
 EndProcedure
;*************************************
 Procedure OpenSub2()
  OpenWindow(#Win_Sub2, -1, -1, 200,150,"Sub2",#PB_Window_ScreenCentered | #PB_Window_SystemMenu )
    CreateGadgetList(WindowID(2))
      ButtonGadget(#Sub2_But_TestBeep,10,10,60,20,"Beep High")
 EndProcedure
;*************************************
 Procedure OpenSub3()
  OpenWindow(#Win_Sub3, -1, -1, 200,150,"Sub3",#PB_Window_ScreenCentered | #PB_Window_SystemMenu )
    CreateGadgetList(WindowID(3))
    ButtonGadget(#Sub3_But_LaunchSub4, 70,110,120,30,"Launch Sub4")
 EndProcedure
;*************************************
 Procedure OpenSub4()
  OpenWindow(#Win_Sub4, -1, -1, 200,150,"Sub4",#PB_Window_ScreenCentered | #PB_Window_SystemMenu )
    CreateGadgetList(WindowID(4))
      OptionGadget(#Sub4_Opt_Text1,20,20,160,20,"Beef")
      OptionGadget(#Sub4_Opt_Text2,20,50,160,20,"Lamb")
      OptionGadget(#Sub4_Opt_Text3,20,80,160,20,"Fish")
 EndProcedure
;*************************************
OpenWindow(#Win_Main,0,0,320,240,"Main", #PB_Window_ScreenCentered | #PB_Window_SystemMenu )
  CreateGadgetList(WindowID(0))
    ButtonGadget(#Main_But_LaunchSub1,190,120,120,30,"Launch Sub1")
    ButtonGadget(#Main_But_LaunchSub2,190,160,120,30,"Launch Sub2")
    ButtonGadget(#Main_But_LaunchSub3,190,200,120,30,"Launch Sub3")
    TextGadget(#Main_Txt_Display,10,10,160,20, "No Choice yet", #PB_Text_Border)
;*************************************
Define Event.l
Define EXIT.l
Define DisplayTxt$ = "Your Choice is "
;*************************************
Repeat
  Event = WaitWindowEvent()
  Select EventWindow()
;*********************************************************
;*** Main Window
;*********************************************************
    Case   #Win_Main
      Select Event
        Case #PB_Event_Gadget
    ;*************************************
    ;** Gadget Events
          Select EventGadget()
            Case #Main_But_LaunchSub1
              OpenSub1()
            Case #Main_But_LaunchSub2
              OpenSub2()
            Case #Main_But_LaunchSub3
              OpenSub3()
          EndSelect
    ;*************************************
    ;** Other Events
        Case #PB_Event_CloseWindow
          EXIT = 1
      EndSelect
;*********************************************************
;*** Sub Window 1
;*********************************************************
    Case #Win_Sub1
      Select Event
        Case #PB_Event_Gadget
    ;*************************************
    ;** Gadget Events
          Select EventGadget()
            Case #Sub1_But_TestBeep
              Beep_( 500,300)
          EndSelect
    ;*************************************
    ;** Other Events
        Case #PB_Event_CloseWindow
          CloseWindow(#Win_Sub1)
      EndSelect
;*********************************************************
;*** Sub Window 2
;*********************************************************
    Case #Win_Sub2
      Select Event
        Case #PB_Event_Gadget
    ;*************************************
    ;** Gadget Events
          Select EventGadget()
            Case #Sub2_But_TestBeep
              Beep_(1500,300)
          EndSelect
    ;*************************************
    ;** Other Events
        Case #PB_Event_CloseWindow
          CloseWindow(#Win_Sub2)
      EndSelect
;*********************************************************
;*** Sub Window 3
;*********************************************************
    Case #Win_Sub3
      Select Event
        Case #PB_Event_Gadget
    ;*************************************
    ;** Gadget Events
          Select EventGadget()
            Case #Sub3_But_LaunchSub4
              OpenSub4()
          EndSelect
    ;*************************************
    ;** Other Events
        Case #PB_Event_CloseWindow
          CloseWindow(#Win_Sub3)
      EndSelect
;*********************************************************
;*** Sub Window 4
;*********************************************************
    Case #Win_Sub4
      Select Event
        Case #PB_Event_Gadget
    ;*************************************
    ;** Gadget Events
          Select EventGadget()
            Case #Sub4_Opt_Text1
              SetGadgetText(#Main_Txt_Display, DisplayTxt$ + "Beef")
            Case #Sub4_Opt_Text2
              SetGadgetText(#Main_Txt_Display, DisplayTxt$ + "Lamb")
            Case #Sub4_Opt_Text3
              SetGadgetText(#Main_Txt_Display, DisplayTxt$ + "Fish")
          EndSelect
    ;*************************************
    ;** Other Events
        Case #PB_Event_CloseWindow
          CloseWindow(#Win_Sub4)
      EndSelect
;*********************************************************
;*** End of Window List
;*********************************************************
  EndSelect
Until EXIT = 1
End
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

BginnR hat geschrieben:(edit)
:cry:
Kann mir denn niemand helfen??
:cry:
(edit)
nach weniger als ZEHN MINUTEN?

Bist du denn noch ganz durchgebraten?

Das hier ist keine Service-Hotline und kein Chat!
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
BginnR
Beiträge: 39
Registriert: 06.12.2008 19:44
Kontaktdaten:

Beitrag von BginnR »

sorry, es war ja nur eine frage
PB 3.30
PB 4.30 Demo
Andesdaf
Moderator
Beiträge: 2671
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

ein Fenster mit Klick auf nen Button öffnen ist doch ganz einfach

Code: Alles auswählen

Procedure Fenster0()
  ;Gadgets etc
  ;#BUTTON_0
  ;Eventloop Win0
EndProcedure

Procedure Fenster1()
  ;Gadgets etc
  ;#BUTTON_1
;Eventloop Win1
EndProcedure

Fenster0()

Repeat
  Event = WaitWindowEvent
  
    Select Event
      Case #PB_Event_Gadget
        Select EventGadget()
          Case #BUTTON_0
             Fenster1()
        Endselect


    Endselect

Until Event = #PB_Event_Closewindow
nur so ein kleiner freihand-code.
Win11 x64 | PB 6.20
Antworten