English
Source / code snippets

Bitmap Cursor lever Icon loading memory Zurüc

 

CompileMarkSeparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Icon, Cursor oder Bitmap in Speicher laden und Handle zurückgeben
Die Funktion LoadImage lädt einen Cursor, ein Icon oder ein Bitmap in den Speicher und gibt dessen Handle zurück.
Parameter:
L1(Param.1 Longint )  - Hier steht das Instanz-Handle des Moduls, aus dem das Bild geladen werden soll.
Kann 0 sein, wenn das Bild aus einer Datei geladen wird und in Parameter 6 $10 vorhanden ist.
L2(Param.2 Longint )  - Wenn $10 definiert wude, steht hier die Adresse eines Strings, der den Dateinamen des Bildes
enthält.
Wenn $10 nicht definiert wurde und in L1(Param.1 Longint ) ein Instanz-Handle definiert wurde,
steht hier die Adresse eines Strings, der den Namen des Bildes in der Datei enthält.
Wenn $10 nicht definiert wurde und in L1(Param.1 Longint ) kein Instanz-Handle definiert wurde,
steht in den unteren zwei Byte (Word) der Identifier des OEM Images, das geladen werden soll.
I3(Param.3 Integer )  - Hier steht ein Flag für den Typ des Images, das geladen werden sollWert
Bedeutung :
 $0  = Bitmap
 $1  = Icon
 $2  = Cursor
I4(Param.4 Integer )  - Hier steht die gewünschte Breite des Bildes in Pixeln als Integer.
I5(Param.5 Integer )  - Hier steht die gewünschte Höhe des Bildes in Pixeln als Integer.
I6(Param.6 Integer )  - Flags die bestimmen, wie das Bild geladen werden soll. Flags können mit | addiert werdenWert  Bedeutung
 $0  = Lädt das Bild farbig.
 $1  = Lädt das Bild nicht farbig.
 $10  = Lädt ein Bild aus einer Bilddatei.
 $20  = Nimmt den Farbwert des ersten Pixels des Bildes und ersetzt alle Pixel mit diesem Farbwert durch die Hintergrundfarbe des Fensters.
 $40  = Lädt das Bild unter Verwendung der System Standardgrößen.
 $80  = Streckt das Bild nicht mit Parameter 4 und 5.
 $1000  = Ersetzt bestimmte Grauwerte durch Systemfarben.
Folgende Flags gibts nicht unter WindowsNTFlag
Bedeutung :
 $1  = Lädt das Bild nicht farbig.
 $40  = Lädt das Bild unter Verwendung der System Standardgrößen.
 $10  = Lädt ein Bild aus einer Bilddatei.
 $1000  = Ersetzt bestimmte Grauwerte durch Systemfarben.
 $20  = Nimmt den Farbwert des ersten Pixels des Bildes und ersetzt alle Pixel mit diesem Farbwert durch die Hintergrundfarbe des Fensters.
Def Getsyscolor(1) !USER32,GetSysColor
Def @Loadimage(6) !USER32,LoadImageA
Settruecolor 1
Declare Ende%, X1%, Y1%, Sicher%, Bild&
Declare Hscroll1%, Hwstatus&, Hwstatus2&, Bild$
Declare Vscroll1%, Hwscrollrech%, Vscrollrech%

Proc Bildladen

    Parameters Bild$, X%, Y%, Hw&
    Declare Wfb#, Bild&, H&
    Dim Wfb#, Add(Len(Bild$),1)
    String Wfb#,0 = Bild$
    Let H& = Loadimage(0,Wfb#,0, X%,Y%,$50)
    Bild& = Control(STATIC,, $05000010E,0,0, X%,Y%,Hw&,2001,%Hinstance)
    @Sendmessage(Bild&,$172,0,H&)
    Dispose Wfb#
    Return Bild&

Endproc

Proc Laden

    Parameters Bild$
    Mloadbmp Bild$ Nur um die X und Y Werte zu ermitteln!
    X1% = %Bmpx
    Y1% = %Bmpy
    Destroywindow(Bild&)
    Bildladen Bild$, X1%, Y1%, Hwstatus&
    Bild& = @&(0)
    Hwstatus2& = @&(0)
    Setscrollrange Hscroll1%, 0, Div(X1%,2)
    Setscrollrange Vscroll1%, 0, Div(Y1%,2)
    Setscrollpos Hscroll1%, 0
    Setscrollpos Vscroll1%, 0
    Return Bild&

Endproc

Windowstyle 63
Windowtitle TASTE F12 neues Bild laden
Window 236,190 - 501,311
Cls Getsyscolor(15)
Usefont MS Sans Serif, 13,0,0,0,0
Setdialogfont 1
Hscroll1% = Create(HScroll,%Hwnd,, 0002,0260, 0490,0016)
Vscroll1% = Create(VScroll,%Hwnd,, 0476,0002, 0016,0256)
Hwstatus& = Control(STATIC,,$54001100, 2,2,472,255,%Hwnd,2000,%Hinstance,512) Wenn kleinere Profanversion, bitte 512 entfernen!!!
Bild$ =
Enablewindow Hscroll1%, 0
Enablewindow Vscroll1%, 0

Whilenot Ende%

    Waitinput

    If @Equ(%Key,2)

        Let Ende% = 1

    Elseif Equ(%Scankey,123)

        Let Bild$ = @Loadfile$(ÖFFNE:, *.BMP)

        If Neq$(Bild$,)

            Laden Bild$
            Bild& = @&(0)

        Else

            Destroywindow (Bild&)
            Enablewindow Hscroll1%, 0
            Enablewindow Vscroll1%, 0

        Endif

    Endif

    If Neq$(Bild$,)

        Enablewindow Hscroll1%, 1
        Enablewindow Vscroll1%, 1

        If Getfocus(Hscroll1%) HScroll

            Hwscrollrech% = Getscrollpos(Hscroll1%) - Getscrollpos(Hscroll1%)*2
            Setwindowpos Hwstatus2& = Hwscrollrech%,Vscrollrech% - X1%,Y1%,0
            Repaint
            Setfocus(%Hwnd)

        Elseif Getfocus(Vscroll1%)VScroll

            Vscrollrech% = Getscrollpos(Vscroll1%) - Getscrollpos(Vscroll1%)*2
            Setwindowpos Hwstatus2& = Hwscrollrech%,Vscrollrech% - X1%,Y1%,0
            Repaint
            Setfocus(%Hwnd)

        Endif

    ../../function-references/XProfan/endif/'>Endif

Endwhile

 
07/16/07  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

no Systemprofil laid out. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Please register circa a Posting To verfassen.
 

Topic-Options

2.863 Views

Untitledvor 0 min.
H.Brill04/14/21
Axel Berse02/21/13
funkheld03/31/12
Michael Borowiak12/07/11

Themeninformationen

this Topic has 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Authors  |  Chat  |  Privacy Policy  |  Download  |  Entrance  |  Help  |  Merchantportal  |  Imprint  |  Mart  |  Interfaces  |  SDK  |  Services  |  Games  |  Search  |  Support

One proposition all XProfan, The there's!


My XProfan
Private Messages
Own Storage Forum
Topics-Remember-List
Own Posts
Own Topics
Clipboard
Log off
 Deutsch English Français Español Italia
Translations

Privacy Policy


we use Cookies only as Session-Cookies because of the technical necessity and with us there no Cookies of Drittanbietern.

If you here on our Website click or navigate, stimmst You ours registration of Information in our Cookies on XProfan.Net To.

further Information To our Cookies and moreover, How You The control above keep, find You in ours nachfolgenden Datenschutzerklärung.


all rightDatenschutzerklärung
i want none Cookie