Delphi-PRAXiS
Seite 2 von 4     12 34      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Zweiten Klick von Doubleklick verhindern / ignorieren (https://www.delphipraxis.net/203055-zweiten-klick-von-doubleklick-verhindern-ignorieren.html)

Getox 9. Jan 2020 07:53

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Guten Morgen,

erstmal vielen Dank für die rege Beteiligung an dem Thema.

Das Problem ist, dass diese Software in öffentlichen Verwaltungen eingesetzt wird. Sehr viele Anwender sind überhaupt nicht Computeraffin. Und wenn es schon mehrfach passiert ist, dass Oma Erna (Kurz vor der Rente und stolz drauf Windows hoch- und runterfahren zu können) versehentlich Datensätze verfälscht, an denen auch noch finanzielle Einkünfte der Verwaltung hängen und das auch noch einigen anderen Anwendern passiert ist, sind wir in der Pflicht diese potenzielle Fehlerquelle zu unterbinden. Bei allem was ich mache muss ich mir ständig vorstellen, dass der IQ des zukünftigen Anwenders leicht unter seiner Körpertemperatur liegt...

Ich werde mir jetzt mal die ganzen Vorschläge anschauen und mal sehen was funktioniert.

Danke nochmal.

sakura 9. Jan 2020 07:57

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Zitat:

Zitat von Getox (Beitrag 1454710)
Ich werde mir jetzt mal die ganzen Vorschläge anschauen und mal sehen was funktioniert.

Eine einfache Lösung wäre noch, einen Timer auf 1000ms zu setzen, welcher im öffnenden Form
Delphi-Quellcode:
Self.Enabled := True;
setzt. Im FormCreate dann ein
Delphi-Quellcode:
Self.Enabled := False;
und weiter geht's ;-)

...:cat:...

P.S.: Trotzdem bleibe ich bei der Meinung, dass es nicht der richtige Weg ist ;-)

Getox 9. Jan 2020 08:10

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Zitat:

Zitat von sakura (Beitrag 1454711)
P.S.: Trotzdem bleibe ich bei der Meinung, dass es nicht der richtige Weg ist ;-)

Ich bekomme auch immer direkt Schnappatmung, wenn die Idee kommt bei irgendeinem Problem mit einem Timer rumzumurksen :D

hhcm 9. Jan 2020 08:37

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Das Problem hatte ich auch schonmal. Nach Tagelanger Suche und rumprobieren habe ich kurzerhand dafür gesorgt, dass in dem zweiten Form kein Control "im Weg" ist. Bisschen an der Position des Fensters rumspielen, den Button leicht verschieben und die Checkbox ebenfalls. Alles nur ein bisschen, damit es keinem auffällt :)

Medium 9. Jan 2020 08:54

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Zitat:

Zitat von hhcm (Beitrag 1454717)
Das Problem hatte ich auch schonmal. Nach Tagelanger Suche und rumprobieren habe ich kurzerhand dafür gesorgt, dass in dem zweiten Form kein Control "im Weg" ist. Bisschen an der Position des Fensters rumspielen, den Button leicht verschieben und die Checkbox ebenfalls. Alles nur ein bisschen, damit es keinem auffällt :)

Das wäre jetzt auch meine Idee gewesen. Gehört, finde ich, durchaus auch zu gutem Interface-Design dazu. Wir haben oft Touchpanels für die Industrie im Einsatz. Die Visualisierungen auf diesen wird mit Tools erstellt, die so "komplizierte" Dinge wie Timer gar nicht erst kennen, und auch hier müssen wir davon ausgehen, dass potenzielle Bediener weitgehend ungeschult (oder auch einfach nur mal in Vertretung) damit arbeiten müssen. Da wäre es mitunter fatal, wenn durch zu leicht gemachte Fehl-Klicks einfach mal irgendwo eine Maschine gestartet würde oder so etwas.

Hier muss man allerdings auch den "großen" eine Teilschuld geben, insbesondere dank Mobile. Selbst in MS Programmen finde ich es teils nicht mehr ganz so eindeutig, wo nun ein Doppel- und wo ein Einfach-Klick gemacht werden muss. Da vieles immer mehr als hybride UI für Touch und Maus daher kommt, werden auch immer mehr Dinge zum Einfach-Klick bei denen es früher anders gewesen wäre. Ich mag so Paradigmen-Mischungen nicht.

Jasocul 9. Jan 2020 09:05

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Zitat:

Zitat von Luckie (Beitrag 1454658)
Der Anwender kann mit Windowsprogramnen nicht umgehen? Weil einen Doppelklick auf eine Schaltfläche macht man ja eher nicht.

Wenn du wüsstest.
Ich kenne einen IT-Abteilungsleiter, der fast immer auf Buttons einen Doppelklick gemacht hat.

Zum Thema:
Du kennst den Zeitpunkt, wann das Fenster gezeigt wird und wann der Button gedrückt wird. Sollte die zeitliche Differenz zwischen diesen Ereignissen einen bestimmten Wert unterschreiten, wird die Aktion hinter dem Button einfach nicht ausgeführt.

Getox 9. Jan 2020 09:15

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Da dieser Button aussieht wie ein Icon (flat, weiß, kein Rahmem, nur Bild), habe ich es nun durch ein ADVOfficeImage ersetzt und das DblClick Event implementiert. Ich habe erst einmal eine sinnlose Variablenzuweisung da reingemacht. Was nun passiert: Das DblClick-Event wird garnicht erst angesprungen und die Checkbox wird dennoch aktiviert. Schade. Ich dachte schon ich hätte eine recht saubere Lösung gefunden.

Getox 9. Jan 2020 10:44

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Ich habe jetzt schlussendlich doch die Anordnung der Komponenten geändert. Die Reihenfolge hat dadurch etwas an Logik verloren, aber damit müssen jetzt alle leben. Zumindest habe ich bei dieser schnellen Lösung das geringste Fehlerpotenzial.

Sherlock 9. Jan 2020 11:49

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
OnClick und OnDoubleClick auf einer Komponente geht nicht wirklich gut, da immer erst OnClick feuert.

Sherlock

himitsu 9. Jan 2020 11:51

AW: Zweiten Klick von Doubleklick verhindern / ignorieren
 
Zitat:

Zitat von hhcm (Beitrag 1454717)
Das Problem hatte ich auch schonmal. Nach Tagelanger Suche und rumprobieren habe ich kurzerhand dafür gesorgt, dass in dem zweiten Form kein Control "im Weg" ist. Bisschen an der Position des Fensters rumspielen, den Button leicht verschieben und die Checkbox ebenfalls. Alles nur ein bisschen, damit es keinem auffällt :)

Es gibt auch die Möglichkeit die Maus zu verschieben.

z.B. kann man im Windows eine Funktion aktivieren, wo bei Dialogen die Maus direkt auf den Default-Button verschoben wird. (aber schnell wieder aus, denn das machte mich voll wuschig)

Zitat:

Zitat von Sherlock (Beitrag 1454747)
OnClick und OnDoubleClick auf einer Komponente geht nicht wirklich gut, da immer erst OnClick feuert.

Drum gibt es Komponenten anderer Hersteller, die das OnClick mit einem Timer verzögern und dann nur auslösen, wenn es keinen Doppelklick gab.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 Uhr.
Seite 2 von 4     12 34      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz