OpenScreen und Grafik

Für allgemeine Fragen zur Programmierung mit PureBasic.
studroa
Beiträge: 8
Registriert: 16.10.2007 10:23

OpenScreen und Grafik

Beitrag von studroa »

Hallo,

ich habe da so ein paar verständniss Probleme mit der Grafik darstellung.
Und zwar, wenn ich in einem Bildschirmmodus eine Grafik anzeigen möchte und den befehl DrawText nehme, wieso geht dass nicht?
Wenn ich ein Grafik anzeigen möchten z.B DisplayTransparentSprite(0,100,100) geht das im Rahmen von StartDraw - StopDraw nicht, oder sehe ich dass falsch?
Und wozu genau dient FlippBuffers und ClearScreen?
Es würde mich wirklich freuen, wenn mir jemand den Rahmen der Grafik-Darstellung erklären würde, also von StartDrawing bis StopDrawing.
Danke euch :allright:
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

...eine Grafik anzeigen möchte und den befehl DrawText nehme, ...
Windows 10 Pro, 64-Bit / Outtakes | Derek
studroa
Beiträge: 8
Registriert: 16.10.2007 10:23

Beitrag von studroa »

Hi,

oh, falsch ausgedrückt, ich meine ich möchte einen Text Zeichnen und eine Grafik anzeigen
Benutzeravatar
gekkonier
Beiträge: 314
Registriert: 20.04.2007 09:06
Wohnort: Wien

Beitrag von gekkonier »

Ist es nicht so korrekt?:

Du möchtest einen Text in eine Grafik zeichnen und dann beides anzeigen, nicht?
studroa
Beiträge: 8
Registriert: 16.10.2007 10:23

Beitrag von studroa »

Ja,

aber dass Schlüsselwort DisplayTransparentSprite() darf ja nicht zwischen "StartDrawing() und StopDrawing" stehen, dann bekomme ich eine Fehlermeldung. Oder was geht da falsch?
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

... aber dass Schlüsselwort DisplayTransparentSprite() darf ja nicht zwischen "StartDrawing() und StopDrawing" stehen
Das ist richtig, also stell es davor oder dahinter. Wo ist jetzt das Problem?
Windows 10 Pro, 64-Bit / Outtakes | Derek
studroa
Beiträge: 8
Registriert: 16.10.2007 10:23

Beitrag von studroa »

Hi,

dann kommt die Fehlermeldung dass mein Sprite nicht initialisiert werden kann...

Hier mal ersten Code:

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024,768,16,"Fenster") ; Fenster Öffnen
Repeat
LoadSprite(1,"test.bmp",0)
DisplayTransparentSprite(1,400,400)
FlipBuffers()
ClearScreen(0)
Until KeyboardPushed(#PB_Key_Escape)
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

LoadSprite() in einer Endlosschleife ist ne' ganz schlechte Idee...

Das bedeuted du lädst dein Bild ununterbrochen neu in den Speicher. Deshalb wird es niemals angezeigt werden.
Windows 10 Pro, 64-Bit / Outtakes | Derek
studroa
Beiträge: 8
Registriert: 16.10.2007 10:23

Beitrag von studroa »

Hallo,

ok klar, habe es aus der Schleife genommen, war mein versehen.

Code: Alles auswählen

InitSprite()
InitKeyboard()
OpenScreen(1024,768,16,"Fenster") ; Fenster Öffnen
LoadSprite(1,"test.bmp",0)
Repeat
ExamineKeyboard()
DisplayTransparentSprite(1,400,400)
FlipBuffers()
ClearScreen(0)
Until KeyboardPushed(#PB_Key_Escape)
Trotzdem bekomme ich die Meldung "#Sprite Objekt not initialized"
Was mache ich falsch... bekomme glaube ich dass einfachste der Welt nicht hin...
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Prüfen ob LoadSprite() erfolgreich war:

Code: Alles auswählen

Debug LoadSprite(1,"test.bmp",0)
oder

Code: Alles auswählen

Result = LoadSprite(1,"test.bmp",0)

Debug Result
[edit]
Ich muss mich korrigieren, hab da was durcheinander gebracht. Es ist möglich ohne Fehler in der Schleife die Grafik mit LoadSprite() kontinuierlich neu zu laden.
[/edit]
Windows 10 Pro, 64-Bit / Outtakes | Derek
Antworten