Servus lieber Stefan.
In beigefügtem Skript versuche ich mit einem kleinen Programmfenster, das ich an eine bestimmte Position am Bildschirm mit der Maus hinbewege, dann irgendeine Taste
drücke und so einen Bildauschnitt aus dem darunterliegenden Desktop anzufertigen. Funktioniert. Nun hole ich mit einem Rechtsklick irgendeinen Pixelfarbwert aus diesem Teilausschnitt
und setze damit die Hintergrundfarbe des kleinen Bildelements in der linken oberen Ecke des Programmfensters. Und nun möchte ich mit einem Klick in das Bildelement den HTML
Farbwert der Hintergrundfarbe zur weiteren Verwendung in die Zwischenablage kopieren. Bis hierher alles super . Nur der Farbhexwert ist irgendwie verdreht. Siehe Bildschirmfoto.
wobei das in Zeile 26 funktionieren würde.
#[cX.Rechts(6;[cX.Hex([cX.Anzeige.Element(Bild-Element_1).Hintergrundfarbe])])]
cX4Web Code
Was ist das?
1 *** Farbe unter Mauszeiger
2 Anzeige-Fenster 'Pixelfarbe', ID='Anzeige-Fenster1', Breite=100, Höhe=60, Rahmen: einfach
3 Bild-Element (ID='Bild-Element_1', X='0', Y='0', Breite='6,88', Höhe='5,82', Zielfenster='Anzeige-Fenster1', Anker: 5)
4 Warte Endlos (Warten auf zu behandelnde Ereignisse)
5
6 *** Tastendruck liefert einen Bildausschnitt des Desktops.¶Mit den Lagekoordinaten des Programmfensters.
7 :: Anzeige(Anzeige-Fenster1)_Taste
8 Setze , MultiSet 'x1=[cX.Anzeige(Anzeige-Fenster1).X]¶y1=[cX.Anzeige(Anzeige-Fenster1).Y]¶b1=[cX.Anzeige(Anzeige-Fenster1).Außenbreite]¶h1...'
9 Warte Pause, Dauer 200ms
10 Zeichne Bild, Text '%Desktop;[x1];[y1];[b1];[h1]%', Ziel 'Anzeige-Fenster1'
11 Setze , MultiSet 'cX.Anzeige(Anzeige-Fenster1).Sichtbar=1¶cX.Anzeige(Anzeige-Fenster1).Transparenz=0'
12 Beende Unterprogramm (Zurück)
13
14 *** Transparenz=40
15 :: Anzeige(Anzeige-Fenster1)_Bewegt
16 Setze , MultiSet '[cX.Anzeige(Anzeige-Fenster1).Transparenz]=40¶'
17 Beende Unterprogramm (Zurück)
18
19 *** In diesem Unterprogramm kann man mit Mausklick rechts den Hex Farbwert unter dem Mauszeiger aus dem Desktopauschnitt im Programmfenster¶auslesen. Sodann wird dieser Wert als Hintergrundfarbe im Bildelement gesetzt.
20 :: Anzeige(Anzeige-Fenster1)_Maustaste_unten(2)
...
cX4Web Code: Einfach anklicken zum Kopieren und in click.EXE 5.0 einfügen
(28 Zeilen, cX 5.0.10.0, Lizenz: Pro)
lg Christian