Minimize, Maximize beim MDI verschwunden wenn Statusbar

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
computerkranker
Beiträge: 66
Registriert: 12.10.2004 21:21

Minimize, Maximize beim MDI verschwunden wenn Statusbar

Beitrag von computerkranker »

Wenn im MDI die Fenster maximiert sind und eine Statusbar auf einen der MDI-Fenster erstelt wird dann ist Minimize, Maximize und der Close Button weg.

Hier mal kleines Beispiel. (erst MDI maximieren und dann Menu Test)

Code: Alles auswählen

If OpenWindow(0,0,0,400,300,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_SizeGadget|#PB_Window_MaximizeGadget,"MDIGadget") 
  If CreateGadgetList(WindowID(0)) And CreateMenu(0, WindowID(0)) 
    MenuTitle("Test")
    MenuItem(0,"Test") 
    MenuTitle("Menu index 0") 
    MenuTitle("MDI windows menu") 
    MenuItem(1, "self created item") 
    MenuItem(2, "self created item") 

    MDIGadget(0, 0, 0, 0, 0, 1, 2, #PB_MDI_AutoSize) 
    MDIWin=AddGadgetItem(0, -1, "child window") 
    CloseGadgetList() 
  EndIf 
  Repeat : 
    EventID = WaitWindowEvent() 
    Select EventID 
      Case #PB_Event_Menu 
        Select EventMenuID() 
          Case 0
            CreateStatusBar(0,MDIWin)
        EndSelect 
    EndSelect 
  Until EventID = #PB_Event_CloseWindow 
EndIf
Mich würde mal Interessieren ob das bei anderen auch so ist und ob jemand weis wie ich wieder an Min,Max und Close komme.
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

stimmt, pb scheint die neue größe des fensters falsch zu berechnen, denn sobald ein resize um auch nur einen pixel kommt sind sie wieder da... als workaraound bis fred das gefixt hat könntest du folgendes machen:

Code: Alles auswählen

If OpenWindow(0,0,0,400,300,#PB_Window_SystemMenu|#PB_Window_ScreenCentered|#PB_Window_SizeGadget|#PB_Window_MaximizeGadget,"MDIGadget")
  If CreateGadgetList(WindowID(0)) And CreateMenu(0, WindowID(0))
    MenuTitle("Test")
    MenuItem(0,"Test")
    MenuTitle("Menu index 0")
    MenuTitle("MDI windows menu")
    MenuItem(1, "self created item")
    MenuItem(2, "self created item")

    MDIGadget(0, 0, 0, 0, 0, 1, 2, #PB_MDI_AutoSize)
    MDIWin=AddGadgetItem(0, -1, "child window")
    CloseGadgetList()
  EndIf
  Repeat :
    EventID = WaitWindowEvent()
    Select EventID
      Case #PB_Event_Menu
        Select EventMenuID()
          Case 0
            CreateStatusBar(0,MDIWin)
            ResizeWindow(WindowWidth()+1, WindowHeight())
            ResizeWindow(WindowWidth()-1, WindowHeight())
        EndSelect
    EndSelect
  Until EventID = #PB_Event_CloseWindow
EndIf 

Benutzeravatar
computerkranker
Beiträge: 66
Registriert: 12.10.2004 21:21

Minimize, Maximize beim MDI verschwunden wenn Statusbar

Beitrag von computerkranker »

So wird es erstmal gehn...

Danke
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Zaphod hat geschrieben:... bis fred das gefixt hat ...
Weiß er (bzw. Freak) denn schon davon?
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

hm, also ich habe es ihm nicht gesagt... sollte wohl mal einer machen :)
Benutzeravatar
freedimension
Admin
Beiträge: 1987
Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
Kontaktdaten:

Beitrag von freedimension »

Ich hab mal im englischen (Bug-)Forum einen Link auf diesen Post hier gesetzt
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog
Antworten