Page 1 of 1
Posted: Sat Apr 12, 2003 8:57 am
by BackupUser
Restored from previous forum. Originally posted by Fangbeast.
Is there any way to resize statut bar fields during a form resize? (So that it will look good). UpdateStatusBar() will plonk the bar down to the botom of the resized form but the field widths stay the same and it doesn't look quite right.
I've been on MSDN and seen all the avaliable Status bar variables and apparently fidl width resetting is not one of them.
Anyone know of another way?
We are Dyslexic of Borg, prepare to have your ass laminated!
Posted: Sat Apr 12, 2003 10:27 am
by BackupUser
Restored from previous forum. Originally posted by freak.
Code: Select all
OpenWindow(0,0,0,200,200,#PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_Screencentered, "StatusBar Test")
OldWidth = WindowWidth() ; <- needed for resizing
Dim Fields.l(3) ; <- needed for resize, must be the number of Fields -1 (since it begins at 0)
hStatus.l = CreateStatusBar(1, WindowID()) ; <- Handle needed for SendMessage
AddStatusBarField(50)
AddStatusBarField(20)
AddStatusBarField(30)
AddStatusBarField(100)
StatusBarText(1, 0, "", #PB_StatusBar_Raised)
StatusBarText(1, 1, "")
StatusBarText(1, 2, "")
StatusBarText(1, 3, "", #PB_StatusBar_Raised)
Repeat
Select WaitWindowEvent()
Case #WM_SIZE
UpdateStatusBar(1) ; <- place StatusBar in the right place
UseWindow(0) ; <- make sure we use the right Window :)
NewWidth = WindowWidth() ; <- get new width
; get sizes of all Fields
SendMessage_(hStatus, #SB_GETPARTS, 4, @Fields() ) ; <- 4 is the number of Fields in the StatusBar
; resize fields...
For i = 0 To 3 ;<- 3 is number of Fields-1, because Array goes from 0 to 3
Fields(i) = Fields(i)* NewWidth / oldWidth
Next i
; set new sizes
SendMessage_(hStatus, #SB_SETPARTS, 4, @Fields() )
OldWidth = NewWidth ; <- new Width will be old next time
Case #PB_EventCloseWindow
End
EndSelect
Hope that helps...
Timo
-------------------------------
http://freak.coolfreepages.com/
Posted: Sat Apr 12, 2003 11:04 am
by BackupUser
Restored from previous forum. Originally posted by Fangbeast.
A right scholarly piece of code. I thank you, works beautifully. Now I can go and produce more code with bugs to fix (ROFL)
We are Dyslexic of Borg, prepare to have your ass laminated!