| |
|
|
| hallo Yo veces el folgenden demo code kopiert y el grafik adaptado! desafortunadamente bekomme Yo sólo una access violation!
declarar fxhandle1&, fxhandle2&, bytearray1&, bytearray2&, name$ fxhandle1&=LoadExtBmp(0,%hdc) Handle 1: vacío Mapa de bits erzeugen name$=logo.bmp fxhandle2&=LoadExtBmp(addr(name$),%hdc) Handle 2: Bild invitar, z.B. 640x480 groß CopyExtBmp(fxhandle1&,0,0,800,600,%HDC,0,0,0) Inhalt des Profanfensters después de Handle 1 bytearray1&=InitExtFX(fxhandle1&) Byte-Array a Handle 1 erzeugen bytearray2&=InitExtFX(fxhandle2&) Byte-Array a Handle 2 erzeugen
WhileLoop 100 SemiTrans(%HDC,0,0,bytearray2&,bytearray1&,&loop) Das Bild se en 100 Schritten en el Wend Hintergrundgrafik eingeblendet
FreeExtFX(bytearray1&) Byte-Array 1 otra vez liberación FreeExtFX(bytearray2&) Byte-Array 2 otra vez liberación FreeExtBmp(fxhandle1&) Handle 1 otra vez liberación FreeExtBmp(fxhandle2&) Handle 2 otra vez liberación
qué mache Yo sólo falso?
Sascha |
|
|
| |
|
|
|
| ¡Hola Sascha,
si una grafische Función con zwei Bytearrays arbeitet, entonces müßen beide Bytearray aber auch igual groß ser (siehe Anleitung). Es en dir no Fall.
fxhandle1&=LoadExtBmo(0,%HDC) Un vacío Mapa de bits en el aktuellen Windowsauflösung se creado, also 1024x768 ???
fxhandle2&=LoadExtBmp(addr(name$),%hdc) Handle 2: Bild invitar, z.B. 640x480 groß (oder es deine Auflösung sólo 640x480?)
CopyExtBmp(fxhandle1&,0,0,800,600,%HDC,0,0,0) Inhalt des Profanfensters después de Handle 1 Wieder otro Werte ???
Also, du mußt sicher ir, el beide Bytearray igual groß son, z.B. 800x600. Benutze anstatt LoadExtBmp(0,...) más bien CreateExtBmp(...)
Dann klappt lo auch )
Saludo, Franco |
|
|
| |
|
|
|
| hi frank!
y el es en allen effekten así? also allen funktionen el initextfx brauchen!?
Dann se me einiges klarer!
Sascha |
|
|
| |
|
|
|
| ¡Hola Sascha,
genau, el es aber auch en el Anleitung bajo InitExtFX(), y es sí auch logisch, si du zwei Speicher hast, y el una veränderst y el veränderten Daten en el zweiten Speicher schreibst, y Speicher es aber a klein, en todos daten a erfassen, schreibst du natürlich en undefinierte Speicherbereiche, y el es nie bien, oder...?
Saludo, Franco |
|
|
| |
|
|
|
| sí el stimmt! hatte el anleitung no correcto gelesen!
also Yo sí no soviel anhnung de grafikformaten aber kann lo eigentlich entonces auch ser el verschiedene grafik-qualitäten (truecolor etc.) probleme hacer? |
|
|
| |
|
|
|
| ¡Hola,
nein, diferente Grafikformate spielen ningún papel, sólo el Breite el Bitmaps muß liso por vier teilbar ser. Intern arbeitet ProSpeed siempre con 24 Bit y geräteunabhängigen HDCs.
Saludo, Franco |
|
|
| |
|
|
|
| hallo,
also tan completamente klappen voluntad lo immernoch no!
Yo folgenden code: KompilierenMarcaSeparacióndeclare fxhandle1&, fxhandle2&, bytearray1&, bytearray2&, name$, logo&
fxhandle1&=CreateExtBmp(%hdc,800,600)
fxhandle2&=CreateExtBmp(%hdc,800,600)
name$="pong3dlogo.gif"
logo&=LoadExtImage(addr(name$),%hdc) Handle 2: Bild laden, z.B. 640x480 groß
CopyExtBmp(fxhandle1&,0,0,800,600,%HDC,0,0,0) Inhalt des Profanfensters nach Handle 1
CopyExtBmp(fxhandle2&,0,0,800,200,logo&,0,0,0)
bytearray1&=InitExtFX(fxhandle1&) Byte-Array zu Handle 1 erzeugen
bytearray2&=InitExtFX(fxhandle2&) Byte-Array zu Handle 2 erzeugen
WhileLoop 100
SemiTrans(%HDC,0,0,bytearray1&,bytearray2&,&loop) Das Bild wird in 100 Schritten in die
Wend Hintergrundgrafik eingeblendet
FreeExtFX(bytearray1&) Byte-Array 1 wieder freigeben
FreeExtFX(bytearray2&) Byte-Array 2 wieder freigeben
FreeExtBmp(logo&)
FreeExtBmp(fxhandle1&) Handle 1 wieder freigeben
FreeExtBmp(fxhandle2&) Handle 2 wieder | 19.04.2004 ▲ | |
|
|
|
|
| Hi Sascha,
zwei Dinge tener Yo en deinem Code entdeckt:
1.) LoadExtImage() ha sólo una Parámetro, no zwei !!! 2.) fxhandle2& es sólo a una Teil con Grafikdaten gefüllt worden, du kannst no su ausgehen, el neu initierte Grafikflächen siempre schwarz son, manchmal befinden se todavía alte Daten en él...!?
Probier el veces. Saludo, Franco |
|
|
| |
|
|