Autor |
Beitrag |
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 28.07.09 02:27
Moin!
Das Programm zeigt einen vergrößerten Ausschnitt des Desktops um die Maus herum an. Die Farbe des Pixels kann mit Strg+Win+C in einem frei definierbaren Format in die Zwischenablage gelegt werden. Mit Strg+Win+X kann auf das nächste Format in der Formatliste umgeschaltet werden. Die Anzeige der aktuellen Farbe hat ein Kontextmenü (Rechtsklick drauf machen), in dem die letzen 10 kopierten Farben erneut abrufbar sind.
Angeregt von der Idee in diesem Thread hier mein Vorschlag für eine Umsetzung.
cu
Narses
Einloggen, um Attachments anzusehen!
_________________ There are 10 types of people - those who understand binary and those who don´t.
Zuletzt bearbeitet von Narses am Do 06.08.09 00:36, insgesamt 1-mal bearbeitet
|
|
Regan
      
Beiträge: 2157
Erhaltene Danke: 72
Java (Eclipse), Python (Sublimetext 3)
|
Verfasst: Di 28.07.09 22:15
Vielleicht wäre ein Screenshot zur besseren Werbung noch besser 
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 28.07.09 22:22
|
|
Narses 
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 28.07.09 22:33
Moin!
Regan hat folgendes geschrieben : | Vielleicht wäre ein Screenshot zur besseren Werbung noch besser  |
Das ist nur ein Fun-Projekt, ich hatte gerade Lust drauf und kurz Zeit dafür, das muss man nicht "bewerben"...
Dein Code ist wie immer sehr lehrreich, Luckie, aber dein Anwendungskonzept kann man wohl kaum mit dem von Christian V. vergleichen - das benutzt sich einfach besser.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Di 28.07.09 22:39
Die Maus gleich beim Start an das Fenster zu binden, dürfte nur eine Kleinigkeit sein.
|
|
Narses 
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 28.07.09 22:41
Moin!
Luckie hat folgendes geschrieben : | Die Maus gleich beim Start an das Fenster zu binden, dürfte nur eine Kleinigkeit sein. |
Da du das sicher auch noch halb im Schlaf kannst, bin ich schon auf dein Demo-Projekt dazu gespannt.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 29.07.09 10:49
Hach, hast du aber auch ein Pech. Gerade vorgestern habe ich den Support und die Weiterentwicklung für das Programm eingestellt. 
|
|
Narses 
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 29.07.09 11:13
Moin!
Luckie hat folgendes geschrieben : | Hach, hast du aber auch ein Pech. Gerade vorgestern habe ich den Support und die Weiterentwicklung für das Programm eingestellt.  |
Ich hab schon damit gerechnet...
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Christian V.
      
Beiträge: 311
Win Xp Prof
Turbo Delphi 2005
|
Verfasst: Mi 29.07.09 11:40
Hey, das mit dem selbst definierbaren Format is ja cool!
Delphi-Quelltext 1:
| GetBValue(AColor)*0.11 +GetGValue(AColor)*0.59 +GetRValue(AColor)*0.3 |
Hat das damit zutun, dass das menschliche Auge nicht alle Farben gleich hell wahrnimmt?
Luckie hat folgendes geschrieben : | Die Maus gleich beim Start an das Fenster zu binden, dürfte nur eine Kleinigkeit sein. |
Wie meinst du das?
Man sollte vielleicht noch anmerken, dass man die History per Rechtsklick auf die Farbausgabe anzeigen kann.
_________________ Hardware runs the world, software controls the hardware, code generates software - Have You already coded today?
|
|
Narses 
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 29.07.09 11:49
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 29.07.09 12:34
Luckie hat folgendes geschrieben : | Die Maus gleich beim Start an das Fenster zu binden, dürfte nur eine Kleinigkeit sein. |
Das Problem ist ja, dass man ohne Hook das nur machen kann, wenn der Benutzer die Maus drückt und zieht. (Aus Sicherheitsgründen eben)
Also ist eine zweistufige Lösung sinnvoll. Der Benutzer kann klicken und ziehen, dann kann man direkt auf OnMouseMove reagieren, sonst eben der Timer. Das sieht dann so aus: Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| procedure TfrmMain.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin TimeSource.Enabled := False; SetCapture(Handle); end;
procedure TfrmMain.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin TimeSourceTimer(Self); end;
procedure TfrmMain.FormMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin ReleaseCapture; TimeSource.Enabled := TRUE; end; | Im Anhang nen kleines Demoprojekt (das originale leicht verändert).
Ggf. muss man auch noch auf die Veränderung des Capturing reagieren (WM_CAPTURECHANGED), also dort auch den Timer aktivieren, aber das habe ich hier einmal außer Acht gelassen.
Einloggen, um Attachments anzusehen!
Zuletzt bearbeitet von jaenicke am Mi 29.07.09 12:36, insgesamt 2-mal bearbeitet
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 29.07.09 12:35
|
|
Narses 
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 29.07.09 12:44
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
jaenicke
      
Beiträge: 19315
Erhaltene Danke: 1747
W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
|
Verfasst: Mi 29.07.09 12:50
Narses hat folgendes geschrieben : | Nur leider steht in dem Artikel nicht drin, wie man das ohne vorher die Maustaste zu drücken aktivieren kann - ohne Hook. |
Ganz einfach: gar nicht (glaube ich).
Das geht aus Sicherheitsgründen nicht. Denn sonst könnte ja jedes Programm einfach so überall Mausbewegungen usw. abgreifen ohne dass man da viel dagegen tun kann. Bei entsprechenden Hooks hingegen sollte eine gute Firewall warnen (tut z.B. ZoneAlarm AFAIK).
Wobei es natürlich via Timer + GetMousePos trotzdem geht (was die Position angeht).
|
|
Narses 
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 29.07.09 13:01
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mi 29.07.09 13:13
Da war dieser komische Luckie, wer auch immer das sein mag, etwas vorschnell. Nach einen Blick in die Hilfe wurde ihm aber klar, dass es mit SetCapture wohl doch nicht so einfach möglich ist.
Für diesen Beitrag haben gedankt: Narses
|
|
MDX
      
Beiträge: 595
Erhaltene Danke: 4
Windows 8.1, Linux Debian 8, Android Lollipop
Delphi, PHP, Java (Android)
|
Verfasst: So 02.08.09 00:22
Endlich sowas such ich schon ewig!!!
THX
|
|