Bitmap als Hintergrund im CRT Fenster

Grafische Primitive, XbaseParts und Darstellungsfragen allgemein.

Moderator: Moderatoren

Antworten
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

Bitmap als Hintergrund im CRT Fenster

Beitrag von xbaseklaus »

Hallo vielleicht kann mir hierbei jemand einen TIP geben ist zwar nicht so wichtig aber wenn mir jemand damit helfen könnte ...

Ich mache für mein Programm folgendes Fenster auf .. das ist auch das einzige:

Code: Alles auswählen

aSizeDesktop    := AppDesktop():currentSize()

oCrt := SetAppWindow()
oCrt:icon:=1
oCrt:FontWidth  := monitor1->Fontw
oCrt:FontHeight := monitor1->Fonth

oCrt:FontName   := "Lucida Console"
oPos := oCrt:currentSize()
aPos  := { (aSizeDesktop[1]-oPos[1]) /2, (aSizeDesktop[2]-oPos[2]) /2}
oCrt:configure(NIL, NIL, apos ,monitor1->Spalte,monitor1->Zeile)
oCrt:setPos( { monitor1->pos1 , monitor1->pos2 } )

oCrt:setTitle( "Test" )


danach überprüfe ich einige Daten ...

auf dem Bildschirm wird dann z.B. mit ? "Bitte Warten " oder was mit SAY angezeigt ... ich habe versucht da im Hintergrund solange ein Bild zu laden und anzuzeigen
... ist mir aber nur gelungen in dem ein neues Fenster aufgegangen ist ...

Das Bild sollte nach dem obigen CODE geladen werden .... das sich die Zeilen bzw Spalten Anzahl je nach Monitor unterschiedlich sein kann sollte das Bild auch angepasst werden...

da muß ich doch dann mit folgendem CODE vorgehen:

Code: Alles auswählen

LOCAL oHintergrund
...

oHintergrund := XbpBitmap():new():create()
   oHintergrund:loadfile("ABLUE.BMP")

...
und wie wird es dann in dem aktuellen Fenster angezeigt ?


mir würde aber erstmal reichen ein Bild überhaupt in den den Hintergrund zu laden ... und solange geladen zu lassen bis das Hauptmenü kommt .. vorher sollte es dann wieder entfernt werden bzw der Speicher freigegeben ...

hast jemand da was ... mit nem CODE mit dem ich testen Könnte... der zumindest in dieses Fenster ein Bild in den Hintergrund lädt ...

wie gesagt es soll kein neues Fenster aufgehen sondern nur ein Bild im Hintergrund dieses Fenster geladen werden und dann wieder gelöscht ...

ist ja beim mir ein CRT Fenster

Mfg Klaus
xbaseklaus
Rekursionen-Architekt
Rekursionen-Architekt
Beiträge: 246
Registriert: Mi, 04. Jun 2014 12:01
Wohnort: FRANKEN

Re: Bitmap als Hintergrund im CRT Fenster

Beitrag von xbaseklaus »

Wenn ich folgendes schreibe bekomme ich zwar keine Fehlermeldung , aber angezeigt wird nichts :-(

Code: Alles auswählen

oHintergrund := XbpBitmap():new():create()
   oHintergrund:loadfile("ABLUE.BMP")
   oHintergrund:draw(oCrt, {100,100})

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Bitmap als Hintergrund im CRT Fenster

Beitrag von AUGE_OHR »

man könnte zwar diesen Code verwenden

Code: Alles auswählen

PROCEDURE Main 
LOCAL oBMP, oPS 

  SetColor( "N/W" ) 
  CLS 

  oPS := SetAppWindow():presSpace() 
  oBMP:= XbpBitmap():new():create( oPS ) 
  oBMP:loadfile( "d:\ALASKA\Cal\AUGE_OHR.JPG" ) 
  oBMP:draw( oPS ) 

  @ MAXROW()/2, MAXCOL()/2 "Hello"
  WAIT 

RETURN 
aber es wird knallen wenn du nicht mit /PM:PM (-> Hybrid) linkst
oError:args :
-> VALTYPE: O CLASS: RootCrt
oError:canDefault : N
oError:canRetry : N
oError:canSubstitute: J
oError:cargo : NIL
oError:description : Methode ist für dieses Objekt unbekannt
oError:filename :
oError:genCode : 23
oError:operation : presSpace
oError:osCode : 0
oError:severity : 2
oError:subCode : 2220
oError:subSystem : BASE
oError:thread : 1
oError:tries : 0
wenn du dir das Besipiel nun ansiehst wirst du merken das jede "Ausgabe" ( SAY / WAIT/ GET ) das Bild "zerstört"
Dateianhänge
CRT_BMP.jpg
CRT_BMP.jpg (46.16 KiB) 3376 mal betrachtet
gruss by OHR
Jimmy
Antworten