If the text of a statusbar field is set without the last, optional
parameter, then it becomes sunken again, even if it previously was
set to be raised or borderless. When I don't set the appearance I
don't expect it to change.
2.
The statusbar text is chopped off at 33
Code: Select all
OpenWindow(0, 0, 0, 440, 50, "StatusBar", #PB_Window_ScreenCentered | #PB_Window_Maximize)
CreateStatusBar(0, WindowID(0))
AddStatusBarField(100000) ; Should be enough
Text.s
For I = 0 To 100
Text.s + Str(I) + ", "
Next
StatusBarText(0, 0, Text)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Code: Select all
; Run this program, and verify that you can close the window by
; clicking the X. Then, run it again, click the title bar once and
; try to close the window. It won't close! You can't even move it.
Procedure ScrollStatusbar(Void)
CreateStatusBar(0, WindowID(0))
Repeat
Delay(50)
ForEver
EndProcedure
OpenWindow(0, 0, 0, 512, 300, "", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
CreateThread(@ScrollStatusbar(), 0)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Code: Select all
; Program ends even though the thread still runs (with and without
; threadsafe). Not a problem by itself, but watch the next snippet.
Procedure Apple(Void)
Repeat
For I = 0 To 800
Delay(50)
Next
ForEver
EndProcedure
ID = CreateThread(@Apple(), 0)
Debug IsThread(ID)
Code: Select all
; Program is waiting for thread! Either this is a bug or the above
; is a bug. (With or without threadsafe.)
Procedure ScrollStatusbar(Void)
CreateStatusBar(0, WindowID(0))
Repeat
Delay(50)
ForEver
EndProcedure
OpenWindow(0, 0, 0, 512, 300, "", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
CreateThread(@ScrollStatusbar(), 0)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Code: Select all
; In fact, something more serious seems to be wrong:
Close = 0
Procedure ScrollStatusbar(Void)
CreateStatusBar(0, WindowID(0))
Repeat
Delay(50)
Until Close = 1
EndProcedure
OpenWindow(0, 0, 0, 512, 300, "", #PB_Window_ScreenCentered | #PB_Window_SystemMenu)
CreateThread(@ScrollStatusbar(), 0)
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
Close = 1