Seite 1 von 1

ProgressBar in Statuszeile

Verfasst: 12.01.2005 11:51
von Sven
Ich suche eine Möglichkeit, einen ProgressBar in die Statuszeile zu verbannen. Habe im CodeArchiv unter ProgressBar und StatusBar nichts gefunden. Zurzeit wird der Statusbar mit "|" aufgefüllt, aber das muss doch schöner gehen, oder?

Sven

Verfasst: 12.01.2005 12:13
von nicolaus
orginal aus dem englischenforum

Code: Alles auswählen

If OpenWindow(0, 100, 150, 300, 100, #PB_Window_SystemMenu | #PB_Window_SizeGadget, "PureBasic - StatusBar Example") 
  
  hstatus= CreateStatusBar(0, WindowID()) 
  If hstatus 
    AddStatusBarField(100) 
  EndIf 

  If CreateGadgetList(WindowID(0)) 
  Hprogress=ProgressBarGadget(0, 120, 2,100, 16, 0,100) 

EndIf 
  SetParent_(Hprogress,hstatus) 
  SetGadgetState   (0,50) 

  Repeat 
    
  Until WaitWindowEvent() = #PB_EventCloseWindow 
EndIf
http://purebasic.myforums.net/viewtopic.php?t=11125

hoffe das hilft

Verfasst: 12.01.2005 17:42
von Sven
Danke, das geht!

Jetzt müßte ich noch die Höhe der Statuszeile rausbekommen, um es anzupassen. Nur unter GetSystemMetrics_() scheint es nicht dabei zu sein, gibt es da noch eine andere Möglichkeit? Irgenwo muss das doch hinterlegt sein?

Sven

Verfasst: 12.01.2005 18:44
von nicolaus
auch da kann ich dir helfen. Ich habe gerade für solche sachen mal ne lib programmiert. Schau mal auf http://www.purearea.net im showcase nach der lib "CN_tool" da gibts unteranderem ne fuktion GetStatusbarHeight() die dir die höhhe der statusbar zurück gibt.

Verfasst: 13.01.2005 23:59
von Sven
Hi Nicolaus!

Verrätst Du mir, wo der Wert herkommt? Was ich nämlich nicht verstehe: Was bestimmt eigentlich die Höhe der Statusbar, bzw. die Größe des enthaltenen Textes, nach dem sich ja die Höhe anscheinend richtet? Wenn ich das Desktop-Schema ändere, kann ich Menuhöhe, Scrollbars... anpassen, aber nicht die Statusbar (unter Win98). Wird das von PB vorgegeben?

Sven