| |
|
|
| BitmapRegion.Dll
KompilierenMarkierenSeparieren#########################################################
BmpRgn1.Dll - FREEWARE
Erstellt eine Region aus einem Bitmap
Da die Region für das Hauptfenster von Profan² gesetzt
werden kann, sind der Fenstergestaltung keine Grenzen
gesetzt.
Funktioniert jetzt auch unter Win2000 und XP
Transparenz-Farbe ist die Farbe des 1.Pixels (oben-links)
##########################################################
Andreas Miethe * Dezember 2001
Quelltext ab Profan² 7.0
##########################################################
DEF Pro_MakeBmpWindow(2) ! BmpRgn1.dll,Pro_MakeBmpWindow
Parameter
1 = Fenster-Handle
2 = Zeiger auf String
Rückgabe = Region
DEF Pro_MakeHBmpWindow(2) ! BmpRgn1.dll,Pro_MakeHBmpWindow
Parameter
1 = Fenster-Handle
2 = Bitmap-Handle
Rückgabe = Region
DEF Pro_GetBmpRgn(1) ! BmpRgn1.dll,Pro_GetBmpRgn
Parameter
1 = Zeiger auf String
Rückgabe = Region
DEF Pro_GetHBmpRgn(1) ! BmpRgn1.dll,Pro_GetHBmpRgn
Parameter
1 = Bitmaphandle
Rückgabe = Region
##########################################################
DEF LoadImage(6) ! USER32,LoadImageA
DEF MoveWindow(6) ! USER32,MoveWindow
DEF SetWindowRgn(3) ! USER32,SetWindowRgn
##########################################################
Declare bmp$,Rgn&,Ende%,Image&
Declare d&
@MCISend$(@ADD$(@ADD$(OPEN ,letitsno.mid), TYPE SEQUENCER ALIAS MIDI))
@MCISend$(PLAY MIDI FROM 33)
settruecolor 1
windowtitle Klaus
windowstyle 240
Window 0,0-0,0
bmp$=klaus.bmp
Image& = LoadImage(0,addr(bmp$),0,0,0,$2050)
Rgn& = Pro_GetBmpRgn(addr(bmp$))
Rgn& = Pro_MakeBmpWindow(%hwnd,addr(bmp$))
Rgn& = Pro_GetHBmpRgn(image&)
Rgn& = Pro_MakeHBmpWindow(%hwnd,image&)
SetWindowRgn(%hwnd,rgn&,1)
Loadbmp bmp$,0,0;0
Setwindowpos %hwnd = 80,80-%bmpx,%bmpy;-1
Usermessages $201,$204
whilenot ende%
waitinput
if Equ(%umessage,$201)Linke Maustaste gedrückt
UseCursor 5
Sendmessage(%hwnd,$0112,$0F012,0);
UseCursor 0
ElseIf Equ(%message,$204)Rechte Maustaste gedrückt
@MCISend$(CLOSE MIDI)
sleep 200
Ende% = 1
EndIf
endwhile
DeleteObject RGN&
end
|
|
|
| |
|
|