Seite 3 von 3

Verfasst: 31.07.2008 19:15
von Fluid Byte
Der lässt sich nicht so einfach entfernen, wenn überhaupt.
Du kannst aber die Statusbar einfach 20px größer als die Fensterbreite machen.

Verfasst: 31.07.2008 19:17
von scholly
Fluid Byte hat geschrieben:Du kannst aber die Statusbar einfach 20px größer als die Fensterbreite machen.
Nö, ich leider nich, dafür brauchts wieder den Api-Guru :lol:

Verfasst: 31.07.2008 21:47
von mk-soft
Warum ein Statusbat nehmen. Geht auch StringGadget mit ReadOnly Attribute.

Code: Alles auswählen

;- Konstanten
Enumeration ; Window ID
  #Window
EndEnumeration

Enumeration ; Menu ID
  #Menu
EndEnumeration

Enumeration ; MenuItem ID
  #Menu_Exit
EndEnumeration

Enumeration ; Statusbar ID
  #Statusbar
EndEnumeration

Enumeration ; Gadget ID
  #MyStatus
EndEnumeration

; ***************************************************************************************

Procedure UpdateWindow()

  Protected x,y,dx,dy
  Protected mn,st,tb
  
  x = 0
  y = 0
  mn = MenuHeight()
  st = StatusBarHeight(#StatusBar)
  ;tb = ToolBarHeight(#ToolBar)
  dx = WindowWidth(#Window)
  dy = 22
  ResizeGadget(#MyStatus, x, y, dx, dy)
  
EndProcedure

;- Globale Variablen
Global exit = 0

;- Fenster
style = #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget
If OpenWindow(#Window, #PB_Ignore, #PB_Ignore, 400, 300, "Fenster", style)
  ; Menu
  If CreateMenu(#Menu, WindowID(#Window))
    MenuTitle("&Datei")
      MenuItem(#Menu_Exit, "Be&enden")
  EndIf
  ; Statusbar
  CreateStatusBar(#Statusbar, WindowID(#Window))
  ; Gadgets
  If CreateGadgetList(WindowID(#Window))
    StringGadget(#MyStatus, 0,0,0,0,"",#PB_String_ReadOnly)
  EndIf
  
  SetGadgetText(#MyStatus, "MyStatus")
  
  ;-- Hauptschleife
  Repeat
    event   = WaitWindowEvent()
    window  = EventWindow()
    Select event
      Case #PB_Event_Menu
        menu    = EventMenu()
        Select menu
          Case #Menu_Exit
            Exit = 1
        EndSelect
        
      Case #PB_Event_Gadget
        gadget  = EventGadget()
        type    = EventType()
        
      Case #PB_Event_CloseWindow
        Exit = 1
      Case #PB_Event_Repaint
      Case #PB_Event_SizeWindow
        UpdateWindow()
        
      Case #PB_Event_MoveWindow
      Case #PB_Event_ActivateWindow
      Case #PB_Event_SysTray
        type    = EventType()
      
    EndSelect
    
  Until Exit
EndIf
FF :wink:

Verfasst: 31.07.2008 22:00
von scholly
mk-soft hat geschrieben:Warum ein Statusbat nehmen.
Wenn jemand wie Kaeru das vorschlägt, möchte ich halt gerne auch eine funktionierende Lösung sehen.
Bisher war das nur ein gutgemeinter Vorschlag, sein "ist zwar ungewöhnlich, aber geht auch." kann ich bisher nicht erkennen.
Und Fluids Lösung ist noch eine Baustelle, die den restlichen Fensteraufbau übern Haufen wirft.

Schade, ich wollte doch wieder was dazulernen :lol:

An KG und FB: Das ist nur die Begründung des "warum", keine Drängelei in Eure Richtung. Ehrlich.