English
Source / code snippets

copyright Versionsinformationen

 

CompileMarkSeparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Copyright- und Versionsinformationen
Größe an die Texte anpassen alles andere verändert sich mit.
Dies ist nur ein Beispiel, ohne Abfrage ob die Maße gültig sind
es wird nicht alles abgefangen
Es sollte nur die Möglichkeit bestehen etwas längeren Text
ohne Probleme unterzubringen.
min lang%=360
min hoch%=290
Autor Dieter Zornow, der Code kann frei verwendet werden

PROC copyright

    DECLARE Copydlg&,ende%,ok%,lang%,hoch%,maske%,maske1%
    let lang%=400hier Länge festlegen kann auch mit parametern übergeben werden
    let hoch%=400hier Höhe festlegen
    case @lt(sizeX%,lang%):let sizeX%=lang%
    case @lt(sizeY%,hoch%):let sizeY%=hoch%
    LET copydlg&=CREATEDIALOG(%HWND,Copyright und Versionsinformation,@sub(@add(xpos%,div(sizeX%,2)),@div(lang%,2)),@sub(@add(ypos%,div(sizeY%,2)),@div(hoch%,2)),lang%,hoch%)
    USEFONT MS Sans Serif,13,0,0,0,0
    SETDIALOGFONT 1
    LET ok%=@CREATEBUTTON(Copydlg&,&OK,45,@sub(hoch%,63),@sub(lang%,95),25)

    PROC show

        SETAUTOPAINT 2
        STARTPAINT Copydlg&
        cls RGB(208,200,208)
        @destroywindow(maske%)
        @destroywindow(maske1%)
        let maske%=Control(STATIC,,$50000006,45,@add(@sub(hoch%,hoch%),6),@sub(lang%,95),sub(hoch%,80),copydlg&,0,%hinstance,$020200)
        USEFONT Arial,18,0,1,0,0
        Textcolor RGB(255,0,0),-1
        DrawText 60,10,        Mein Programm, Version 1.0
        USEFONT Arial,18,0,0,0,0
        DrawText 60,40,        Das ist die Zeile 2 des Dlg´s
        DrawText 60,70,        Das ist die Zeile 3 des Dlg´s
        DrawText 60,100,        Das ist die Zeile 4 des Dlg´s
        Textcolor RGB(0,0,255),-1
        DrawText 60,130,         Copyright 2003 by Nobody
        DrawText 60,160,           E-mail: nobody@net.de
        Textcolor RGB(255,0,0),-1
        DrawText 60,190,                Lizenz: Freeware
        DRAWICON A,10,10 Aus Profan ein Icon
        DrawLibIcon Shell32.dll,46,10,10
        USEFONT MS Sans Serif,13,0,0,0,0
        let maske1%=Control(BUTTON,&Ok,$5001D000,45,@sub(hoch%,63),@sub(lang%,95),25,copydlg&,0,%hinstance,$0)Flacher Button zur Anzeige als Maske
        ENDPAINT
        SETAUTOPAINT 1 sonst kann man das Hauptfenster ausradieren

    ENDPROC

    show

    WHILENOT ende%

        Waitinput

        If @EQU(%KEY,2)

            LET ende%= 1

        ELSEIF %WMPAINT

            show

        Elseif Getfocus(ok%)

            LET ende%= 1

        ENDIF

    WEND

    SETAUTOPAINT 2 abhängig von Programmeinstellungen
    @DESTROYWINDOW(Copydlg&)

ENDPROC

Proc Showcopyright

    Def @GetWindowPos(2) !USER32, GetWindowRect
    Declare pos#
    DIM pos#,16
    let hwnd&=@getactiveWindow() Handle des eigenen Fensters holen
    @GetWindowPos(hwnd&,pos#) die 4 Ecken holen per API
    let xpos%=@long(Pos#,0) links oben
    let ypos%=@long(Pos#,4)
    let xRpos%=@long(Pos#,8) rechts unten
    let yRpos%=@long(Pos#,12)
    SizeX%=@sub(xRpos%,xpos%) Fenstergröße X
    SizeY%=@sub(yRpos%,ypos%) Fenstergröße Y
    Dispose pos#
    copyright Dialog aufrufen

Endproc

Beispiel Hauptprogramm. Das ganze würde auch mit Parameterübergabe funktionieren
Declare xpos%,ypos%,xRpos%,yRpos%,hwnd&,sizeX%,SizeY%
SETTRUECOLOR 1
Windowstyle 15
Window 0,0-800,600
cls RGB(208,200,208)
Showcopyright Fensterposition und Größe holen und Dialog aufrufen
Print Bitte Fenster verschieben (und) oder auch kleiner oder größer ziehen
waitinput
Showcopyright wieder Fensterparameter holen und appeal
end
 
07/15/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

1.158 Views

Untitledvor 0 min.
H.Brill09/14/22
Christof Neuß01/30/19
rquindt09/13/15
Uwe Lang08/03/15
More...

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