AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Delphi "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

"Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

Ein Thema von Der schöne Günther · begonnen am 2. Aug 2013 · letzter Beitrag vom 5. Aug 2013
Antwort Antwort
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 2. Aug 2013, 22:25
Es gibt da so eine schöne API-Funktion GetLastInputInfo:
http://msdn.microsoft.com/en-us/libr...(v=vs.85).aspx
Die scheint aber global zu sein ... könnte aber für das beschriebene Szenario unerheblich sein
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.199 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 2. Aug 2013, 22:32
Danke schon einmal für die Antworten.

Was mir erst jetzt noch einfällt ist folgende (unter Umständen) greifende Einschränkungen: Die Anwendung wird zwar 99% der Zeit über einen Touchscreen bedient, eventuell liegen aber in einer Kiste Maus und Tastatur. Jetzt würde es mich nicht wundern, wenn bsp. Erschütterungen die Maus immer einen Millimeter zittern lassen und das so Timeout-Funktionen aushebelt.

Ein Maushook hätte hier im Gegensatz zu GetLastInputInfo wohl den Unterschied, dass ich hier reine Mausbewegungen ohne gedrückte Taste (Finger auf dem Glas) schon einmal aussortieren könnte...
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 3. Aug 2013, 06:46
Ich hab sowas auch an einem Touchscreengerät schon mal mit einem Maushook umgesetzt. Das hat gut funktioniert.
Probleme mit Erschütterungen hatte ich nie. Und meine Touchscreens hingen in Hallen wo auch mal ein Trecker oder ein Gabelstapler vorbeifährt.
Jens
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.199 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 3. Aug 2013, 06:51
Das war auch kein etablierte Tatsache sondern nur so eine fixe Idee. Gut zu wissen dass man damit wohl nicht rechnen muss
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 5. Aug 2013, 06:12
Wie wäre es mit TApplicationEvents + Timer?
1) OnIdle: Timer erfinden+starten
2) OnMessage wenn WM_MOUSEFIRST .. WM_MOUSELAST, WM_KEYFIRST .. WM_KEYLAST, dann Timer wieder zerstören, falls Assigned
3) OnTimer: Reset
Nr.1 Delphi-Tool: [F7]
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#6

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 5. Aug 2013, 07:25
Probleme mit Erschütterungen hatte ich nie.
Ich erlebe häufig das Phänomen, daß sich der Mauszeiger meiner optischen Maus selbständig bewegt. Nach kurzem Hochheben und Niedersetzen der Maus steht der Zeiger dann wieder still ... Ein Austausch der Maus brachte nichts und zeigte das Phänomen weiterhin ...
  Mit Zitat antworten Zitat
Benutzerbild von Nersgatt
Nersgatt

Registriert seit: 12. Sep 2008
Ort: Emlichheim
693 Beiträge
 
Delphi 10.1 Berlin Professional
 
#7

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 5. Aug 2013, 07:27
Sowas hab auch ab und zu. Aber nur wenn ich bei Kunden an spiegelnden Tischen/Glastischen oder weißen Tischen arbeiten muss. Einfach den Collegeblock drunterlegen und das Thema ist erledigt.
Jens
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.199 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 5. Aug 2013, 08:22
Oder den Exorzisten rufen. Dieser allein löst das ursprüngliche Problem aber nicht, dafür stehen mittlerweile diese drei Wege zur Auswahl:
  • WinAPI::GetLastInputInfo - Keine Kontrolle Eingaben (Mauszucken) auszufiltern, arbeitet mit TickCounts
  • Windows-Messages abfangen - Eingaben lassen sich beliebig filtern, allerdings auf Anwendung selbst beschränkt
  • Maus/Tastatur-Hook - Sessionweit einsetzbar, sehr flexibel


Bislang sieht für mich der Hook am besten aus: Bei den Messages sehe ich noch das Problem, dass ich keine Eingaben mehr mitbekomme, wenn beispielsweise ein Drucken-Dialog aufgemacht wird (?) oder jemand beispielsweise Teamviewer gestartet haben wollte und erst einmal dort auf der Oberflächer herumdoktort.
  Mit Zitat antworten Zitat
Perlsau
(Gast)

n/a Beiträge
 
#9

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 5. Aug 2013, 08:55
Sowas hab auch ab und zu. Aber nur wenn ich bei Kunden an spiegelnden Tischen/Glastischen oder weißen Tischen arbeiten muss. Einfach den Collegeblock drunterlegen und das Thema ist erledigt.
Bei mir ist's genau umgekehrt: Seit ich die Maus auf dem blanken Schreibtisch mit weißgrauer Oberfläche rumschiebe, kommt das nicht mehr vor. Zuvor hatte ich's mit Mauspad und allen möglichen Unterlagen probiert. Der zusätzliche Vorteil der jetzigen Lösung: Der Schreibtisch läßt sich leicht reinigen.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.961 Beiträge
 
Delphi 12 Athens
 
#10

AW: "Zurück zur Standard-Ansicht nach X Sekunden Idle" - Wie setze ich das um?

  Alt 5. Aug 2013, 13:16
Bei mir ist's genau umgekehrt: Seit ich die Maus auf dem blanken Schreibtisch mit weißgrauer Oberfläche rumschiebe, kommt das nicht mehr vor.
Seit ich nur noch etwas bessere Mäuse und entsprechende Mousepads benutze, hatte ich das Problem nicht mehr. Bei günstigeren Mäusen hatte ich das öfter gehabt, allerdings stand da auch oft dran, dass es nur auf ganz bestimmten Oberflächen funktioniert.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz