| |
|
|
|
Beschreibung:
ChooseColor zeigt une Farbauswahldialog à et liefert qui ausgewählte la couleur zurück.
Deklaration:
Def ChooseColor(1) !COMDLG32,ChooseColorA
paramètre:
1.paramètre: Struktur ou bien 32 Byte Bereichsvariable => Byte 0-3 = Longueur des Bereiches dans Bytes comme LongInt. Byte 4-7 = cela Handle des Fensters, sur dem qui Dialog erzeugt volonté soll. Byte 8-11 = si comme Flag $40 gesetzt wurde, steht ici cela Handle des Speicherobjektes, cela qui neue Dialogmaske contient. si comme Flag $20 gesetzt wurde, steht ici cela Handle des Moduls avec qui Dialogmaske avec dem Dialogtitel, qui chez Byte 28 festgelegt wird. Byte 12-15 = comme Contribution un Farbwert, qui standardmäßig ausgewählt wird. Kehrt qui Funktion zurück, steht ici qui Farbwert qui gewählten la couleur. Byte 16-19 = aiguille sur une 64 Byte grand Bereichsvariable, qui comme LongIntwerte qui Farbwerte qui Farbauswahlboxen contient. Byte 20-23 = Flags zur initialisation des Dialoges => $100 = Anwender peux alle Farben choisir $10 = Nouvelles à den Dialog peut avec qui Procédure à Byte 28 abgefangen volonté. $20 = Neue Dialogbox masque wird benutzt et est sich dans Modul à Byte 8. qui nom steht à Byte 28. $40 = Benutzte masque pour den Dialogue avec les dem Handle dans Byte 8. $2 = Vollauswahl aller Farben Montrer. $4 = Deaktiviert den Button zum Öffnen qui Dialogbox-Erweiterung. $1 = Vorgabe einer Standard-la couleur. $8 = Aider-Button Montrer. $80 = seulement Grundfarben auswählbar.
Rückgabewert:
si User OK geklickt hat, ungleich 0. Sonst 0.
Beispiele:
KompilierenMarqueSéparationDef ChooseColor(1) !"COMDLG32","ChooseColorA"
Declare ChooseColor#,CustomColors#,Colors&[16],Button&,OK&
Proc ColorDialog
Parameters color&,options&,inifile$,Result&,Name$
Declare i%
Dim ChooseColor#,36
Dim CustomColors#,64
SetTrueColor 1
While lt(i%,16)
Long CustomColors#,mul(i%,4)= Colors&[i%]
Inc i%
Wend
Long ChooseColor#,0=36
Long ChooseColor#,4=GetActiveWindow()
Long ChooseColor#,8=0
Long ChooseColor#,12=RGB(192,192,192)
Long ChooseColor#,16=CustomColors#
Long ChooseColor#,20=3 CC_RGBINIT(1) + CC_FULLOPEN(2)
Long ChooseColor#,24=0
Long ChooseColor#,28=0
Let Name$="Fensterfarbe wählen!"
Long ChooseColor#,32=0
LET OK&=@ChooseColor(ChooseColor#)
If OK&<>0
Let i%=0
While lt(i%,16)
Let Colors&[i%]=long(CustomColors#,mul(i%,4))
Inc i%
Wend
EndIf
Let Result&=@LONG(ChooseColor#,12)
Dispose ChooseColor#
Dispose CustomColors#
Return Result&
EndProc
Windowstyle 31
WindowTitle "Farbe auswählen"
Window 0,0-640,440
Settruecolor 1
Let Button&=@Createbutton(%HWND,"Farbe wählen",20,300,200,30)
While 0=0
WaitInput
IF @Getfocus(Button&)
ColorDialog
Case OK&<>0 : CLS @&(0)
endif
=s4 href='./../../function-references/XProfan/Wend/'>Wend
[keywords:aa38là9c3b] la couleur Dialog Farben auswählen bestimmen Farbauswahl Farbauswahldialog [/keywords:aa38là9c3b] |
|
|
| |
|
|