Seite 2 von 2

Verfasst: 29.01.2006 17:41
von NicTheQuick
Schonmal etwas von Rückgabewerten gehört?

Wenn [c]OpenScreen()[/c] Null zurückgibt, dann gehts auch nicht.
Versuchs mal mit 32 Bit, 24 Bit machen die neueren Grafikkarten immer
seltener.

Verfasst: 29.01.2006 18:28
von nco2k
@Wespe23
boah, wie kann man so viel falsch machen, bei so wenig code? :?

- du überprüfst NICHT ob InitSprite() etc. geklappt hat
- du verwendest 24bit farbtiefe (düfte auf fast keinem tft-monitor gehen)
- ClearScreen(0,0,0) nach einem OpenScreen() ist überflüssig
- du verwendest kein StopDrawing() nach einem StartDrawing()
- du benützt kein FlipBuffers()
- ExamineKeyboard() gehört in die schleife
- CloseScreen() ist überflüssig wenn du das programm sowieso beendest

versuchs doch mal so:

Code: Alles auswählen

#Width = 640
#Height = 480
#Depth = 16

If InitSprite() = #False
  MessageRequester("ERROR", "Could not initialize DirectX 7 or higher!", #MB_ICONERROR)
ElseIf InitKeyboard() = #False
  MessageRequester("ERROR", "Could not initialize DirectX compatible Keyboard!", #MB_ICONERROR)
ElseIf OpenScreen(#Width,#Height,#Depth,"2D-Zeichnung")
  
  Repeat
    
    ClearScreen(0, 0, 0)
    If StartDrawing(ScreenOutput())
      Box(300,400,180,200,RGB(20,0,200))
      Box(500,200,30,90,RGB(255,200,0))
      StopDrawing()
    EndIf
    FlipBuffers()
    
    ExamineKeyboard()
  Until KeyboardReleased(#PB_Key_Escape)
  
Else
  MessageRequester("ERROR", "Could not open Screen of "+Str(#Width)+"x"+Str(#Height)+"x"+Str(#Depth)+"!", #MB_ICONERROR)
EndIf
End
c ya,
nco2k

Verfasst: 29.01.2006 18:30
von edel
remi_meier hat geschrieben:Darf ich ihm sagen, dass das in einer Endlosschleife endet (zumindest
wenn er es so macht wie im Post über mir)?
Solange er nicht einmal in der Lage ist die Hilfe aufzurufen bzw.
sich die Beispiele anzusehen (dann waere das hier auch das
falsche Forum), wird das wohl nichts bringen. ;-)


@nco2k
Spielverderber :twisted:

Verfasst: 29.01.2006 18:36
von nco2k
@hallodri
tut mir echt leid, ich nehme mir auch jedes mal vor bei Wespe23 nicht zu posten, aber wenn ich sowas sehe, tut es mir einfach nur in den augen weh. :oops: :mrgreen:

c ya,
nco2k

Verfasst: 30.01.2006 20:31
von Mok
Ich hab jetzt Examinekeyboard() in die Schleife getan... und es funktioniert... <)

Verfasst: 30.01.2006 21:02
von Macros
Viele Grafikkarten ( z.B. meine) unterstützen 24 Bit Screens von PB nicht.
Keine Ahnung wieso das nicht klappt. Probiers mit 32.