Italia
Fonte/ Codesnippets

Choosecolor2 Dialog

 

Uwe
''Pascal''
Niemeier
Hi Leute!

Noch ein aktuelles Snippet: Ein Dialog zur Farbauswahl.
KompilierenMarkierenSeparieren
window 400,400
 $H Windows.ph
usermessages 16
var Ini$="X:Test.ini"************************* Pfad bitte anpassen!

proc ChooseColor2---------------------------------------ChooseColor2

    parameters rgb#
    declare a#:dim a#,36--CHOOSECOLOR
    var Color&=long(rgb#,64)
    long a#,0=36,%hwnd,0,Color&,rgb#,11
    Color&=if(external("comdlg32","ChooseColorA",a#),long(a#,12),-1)
    case Color&>=0:long rgb#,64=Color&
    dispose a#
    return Color&
    endproc-------------------------------------------------------------
    declare b#:dim b#,64+4--Array für 16 benutzerdefinierte Farben + gewählte Farbe
    var Result&=~GetPrivateProfileStruct("Config","Color",b#,68,addr(Ini$))

    ifnot Result&----------Vorgaben, falls Ini noch nicht vorhanden

        long b#,0=$FFDDDD,$DDFFDD,$DDDDFF,$FFFFDD,$FFDDFF,$DDFFFF--Definierte Farben
        long b#,64=$F0F0F0--Aktuelle Farbe

    endif

    cls long(b#,64)--zuletzt gewählte Farbe, gelesen aus Ini

    while 1

        waitinput
        case %umessage=16:break
        Result&=ChooseColor2(b#)
        case Result&>=0:cls Result&

    endwhile

    ~WritePrivateProfileStruct("Config","Color",b#,68,addr(Ini$))

Im Gegensatz zum profanen ChooseColor  wird hier eine Bereichsvariable trasferimento,
in der als LongInts 16 Farben per die "Benutzerdefinierte Farben"-Felder + die vorgewählte Farbe abgelegt sind.
Bei Bestätigen wird dieses Array aktualisiert; die gewählte Farbe wird zusätzlich direkt zurückgegeben.
Bei Beenden wird das Array mit allen Farben per API in un Ini geschrieben,
damit es beim nächsten Start wieder ausgelesen werden kann; alle Farben stehen dann wieder zur Verfügung

PS: Wenn man a# und b# zu Beginn des Programmi global "zur allgemeinen Verwendung" deklariert/dimensioniert,
wird das Ganze noch etwas einfacher

Frohes Fest euch allen!
Pascal
 
23.12.2009  
 




Frank
Abbing
Hi,

ich erhalte leider nur ein leeres Fenster.
 
23.12.2009  
 




Frank
Abbing
Ah, Extraklick nötig... dann gehts.
 
23.12.2009  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

4.252 Views

Untitledvor 0 min.
RudiB.19.04.2022
Matzbub29.12.2018
rquindt28.11.2017
Jochen Roxlau15.04.2015

Themeninformationen

Dieses Thema hat 2 subscriber:

Frank Abbing (2x)
Uwe ''Pascal'' Niemeier (1x)


Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie