Seite 1 von 1

Dialoge

Verfasst: 23.10.2014 07:22
von Bobo220673
Hallo!
Ich hab hier ein kleines Problem was ich nicht so ganz verstehe. Warum geht der Button der den 2ten Dialog aufruft nur 1x? Denke mal das ist irgend ein dummer Fehler...

test.pb

Code: Alles auswählen

XIncludeFile "frmMain.pbf"
XIncludeFile "frmSettings.pbf"

Procedure frmMain_Button_Open(EventType)
  OpenfrmSettings()
EndProcedure

Procedure frmSettings_Button_Close(EventType)
  CloseWindow(frmSettings)
EndProcedure

OpenfrmMain()

Repeat
  Event = WaitWindowEvent()
  
  Select EventWindow()
      
    Case frmMain
      Select Event
        Case #PB_Event_CloseWindow
          End
      EndSelect
      frmMain_Events(Event)
      
    Case frmSettings
      Select Event
        Case #PB_Event_CloseWindow
          frmSettings_Button_Close(Event)
      EndSelect      
      frmSettings_Events(Event)
      
  EndSelect

ForEver
frmMain.pbf

Code: Alles auswählen

;
; This code is automatically generated by the FormDesigner.
; Manual modification is possible to adjust existing commands, but anything else will be dropped when the code is compiled.
; Event procedures needs to be put in another source file.
;

Global frmMain

Global Button_0

Declare frmMain_Button_Open(EventType)

Procedure OpenfrmMain(x = 0, y = 0, width = 600, height = 400)
  frmMain = OpenWindow(#PB_Any, x, y, width, height, "AppName", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  Button_0 = ButtonGadget(#PB_Any, 220, 340, 200, 40, "Dialog 2 öffnen")
EndProcedure

Procedure frmMain_Events(event)
  Select event
    Case #PB_Event_CloseWindow
      ProcedureReturn #False

    Case #PB_Event_Menu
      Select EventMenu()
      EndSelect

    Case #PB_Event_Gadget
      Select EventGadget()
        Case Button_0
          frmMain_Button_Open(EventType())          
      EndSelect
  EndSelect
  ProcedureReturn #True
EndProcedure
frmSettings.pbf

Code: Alles auswählen

;
; This code is automatically generated by the FormDesigner.
; Manual modification is possible to adjust existing commands, but anything else will be dropped when the code is compiled.
; Event procedures needs to be put in another source file.
;

Global frmSettings

Global Button_0

Declare frmSettings_Button_Close(EventType)

Procedure OpenfrmSettings(x = 0, y = 0, width = 420, height = 150)
  frmSettings = OpenWindow(#PB_Any, x, y, width, height, "Einstellungen", #PB_Window_SystemMenu | #PB_Window_WindowCentered, WindowID(frmMain))
  Button_0 = ButtonGadget(#PB_Any, 130, 90, 160, 40, "Dialog2 Schießen")
EndProcedure

Procedure frmSettings_Events(event)
  Select event
    Case #PB_Event_CloseWindow
      ProcedureReturn #False

    Case #PB_Event_Menu
      Select EventMenu()
      EndSelect

    Case #PB_Event_Gadget
      Select EventGadget()
        Case Button_0
          frmSettings_Button_Close(EventType())          
      EndSelect
  EndSelect
  ProcedureReturn #True
EndProcedure

Re: Dialoge

Verfasst: 23.10.2014 08:31
von Kiffi
Button_0 von frmSettings solltest Du in was anderes (beispielsweise Button_1) umbenennen.

Oder so: frmMain_Button_0 und frmSettings_Button_0

Grüße ... Peter

Re: Dialoge

Verfasst: 23.10.2014 22:53
von Bobo220673
Danke, jetzt gehts :)
Was für ein dummer Fehler.... Hätte ich auch selber drauf kommen können...