ich hatte dies schon unter PureBasic 4.0 Beta gepostet. Bekam aber keine Antwort. Darum versuche ich es hier nochmal. Es gibt da ein Problem unter Linux Suse10.2. Ich möchte auf einem Fenster einen Screen erstellen.
Hatte einen komischen Fehler. Also habe ich das Original-Beispiel aus der Hilfe verwendet um eventuelle Fehlerquellen meinerseits heraus zu finden. Der Fehler war dann aber derselbe.
Hier der original Hilfe-Code:
Code: Alles auswählen
If InitSprite() = 0
MessageRequester("Error", "Can't open screen & sprite enviroment!", 0)
End
EndIf
If OpenWindow(0, 0, 0, 220, 160, "A screen in a window...", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(0))
ButtonGadget(0, 170, 135, 45, 20, "Quit")
EndIf
If OpenWindowedScreen(WindowID(0), 0, 0, 160, 160, 0, 0, 0)
CreateSprite(0, 20, 20)
If StartDrawing(SpriteOutput(0))
Box(0, 0, 20, 20, RGB(255, 0, 155))
Box(5, 5, 10, 10, RGB(155, 0, 255))
StopDrawing()
EndIf
Else
MessageRequester("Error", "Can't open windowed screen!", 0)
End
EndIf
EndIf
direction = 2
Repeat
; Es ist sehr wichtig, alle im Queue befindlichen Ereignisse während jedes Frames abzuarbeiten
;
Repeat
Event = WindowEvent()
Select Event
Case #PB_Event_Gadget
If EventGadget() = 0
End
EndIf
Case #PB_Event_CloseWindow
End
EndSelect
Until Event = 0
FlipBuffers()
ClearScreen(RGB(0, 0, 0))
DisplaySprite(0, x, x)
x + direction
If x > 140 : direction = -2 : EndIf
If x < 0 : direction = 2 : EndIf
Delay(1)
ForEver
Kennt ihr dieses Verhalten?
Wirkt ein wenig merkwürdig, vor allen Dingen, weil ich nicht weiß, wie man das beseitigt. Oder sollte es doch ein Bug sein??
Vielen Dank für eure Hilfe im Voraus
Torsten