Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet" (https://www.delphipraxis.net/192006-windows-designfrage-mauscursor-hintergrundaktivitaet-versus-ausgelastet.html)

Delphi-Laie 13. Mär 2017 10:22


Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Hallo Programmierfreunde, ich stehe gerade vor einer Designfrage, die ich trotz Recherche (dieses Forum und anderes Internet) bisher nicht zufriedenstellend beantwortet fand.

Es geht um die beiden Windows-Mauscursor "Hintergrundaktivität" und "ausgelastet".

Nach meiner Erfahrung wird "Hintergrundaktivität" nur allzugern, aber nicht nur bei Programmstarts eingesetzt (die Konstante wird in der Controls-Unit selbsterklärend mit "crAppStart" tituliert), allerdings ist diese Logik diskutabel, denn der Programmstart gehört - neben dem Programmende - zu den Phasen einer Programmlaufzeit, in der das Programm und das umgebende Windows am meisten zu tun haben, also ausgelastet sind (na gut, genaugenommen immer der Prozessor). Und auf Nutzereingaben reagieren kann ein Programm währenddessen in aller Regel auch nicht.

Wenn ein Programm voll ausgelastet ist und sich von Nutzereingaben nicht stören läßt, ist "ausgelastet" (Standard: die Sanduhr) der bestimmt geeignetest Cursor, wird dafür wohl auch allermeistens verwendet und war von Microsoft sicher auch so gedacht.

Die entscheidende Frage ist, welcher Mauscursor der passendste ist, wenn ein Program zwar voll ausgelastet ist - das ist es in den (meistens ziemlich kurzen) Phasen, in denen es etwas zu tun hat, m.E. immer - jedoch auf Nutzereingaben zu reagieren imstande ist: Ist dann der Mauscursor für "ausgelastet" (Standard: Sanduhr) oder Mauspfeil mit nebengestellter Sanduhr ("Hintergrundaktivität") der passendste Mauscursor - was meint Ihr? Wie war das ursprünglich gedacht?

Vielen Dank und Gruß

Delphi-Laie

Ghostwalker 13. Mär 2017 10:56

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Die Sanduhr würd ich nur dann verwenden, wenn das Programm nicht auf Nutzereingaben reagieren kann und entsprechend beschäftigt ist.

Der Pfeil mit Sanduhr ist dann sinnvoll, wenn das Programm im Hintergrund eine größere Aktion erledigt (z.B. größere Datenmengen an einen Server überträgt), der User aber grundsätzlich normal weiterarbeiten kann.

Bei kurzen Aktionen des Programms, würd ich den Cursor garnicht ändern, da der User, je nach Hardware, noch nicht mal merkt das das Programm was tut.

Ich persönlich betrachte es erstmal von der User-Warte aus. Kann der User, während einer Aktion des Programms, überhaupt sinnvoll weiterarbeiten oder nicht. Benötigt der User das Ergebniss der Aktion oder nicht ?

Beispielsweise würde es keinen Sinn machen, den User weiterarbeiten zu lassen, während das Grid,
das er gerade bearbeiter, sortiert oder gefiltert wird. Das weiterarbeiten des Users ist also abhängig vom Ergebnis der Sortierung -> Sanduhr.

EWeiss 13. Mär 2017 11:13

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Ich persönlich würde in der heutigen zeit überhaupt keinen Wait Cursor mehr verwenden sondern anstelle dessen ein Animiertes Spinner Object.

gruss

Delphi-Laie 13. Mär 2017 11:24

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Zitat:

Zitat von Ghostwalker (Beitrag 1364009)
Die Sanduhr würd ich nur dann verwenden, wenn das Programm nicht auf Nutzereingaben reagieren kann und entsprechend beschäftigt ist.

versus

Zitat:

Zitat von Ghostwalker (Beitrag 1364009)
Der Pfeil mit Sanduhr ist dann sinnvoll, wenn das Programm im Hintergrund eine größere Aktion erledigt (z.B. größere Datenmengen an einen Server überträgt), der User aber grundsätzlich normal weiterarbeiten kann.

Das ist eben nicht das gleiche, denn "normal weiterarbeiten" ist nämlich m.E. nur möglich, wenn diese die hohe Auslastung verursachende Aufgabe an einen Extrathread delegiert wurde. Z.B. wäre das Füllen der Druckerwarteschlange ja solch ein Vorgang, bei dem nach meiner Erinnerung sogar nie auf einen solchen "Hintergrundmauscursor" umgeschaltet wird, denn mit dem Programm kann man dennoch ganz normal weiterarbeiten.

Aber rein vom Gefühl her bin ich der ersten Option zugeneigt, danke für diese Bestätigung!

Zitat:

Zitat von EWeiss (Beitrag 1364013)
Ich persönlich würde in der heutigen zeit überhaupt keinen Wait Cursor mehr verwenden sondern anstelle dessen ein Animiertes Spinner Object.

Das kannte ich noch gar nicht. Erfordert sicher ein ziemlich neues Delphi. Auch Dir danke!

EWeiss 13. Mär 2017 11:34

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Zitat:

Das kannte ich noch gar nicht. Erfordert sicher ein ziemlich neues Delphi. Auch Dir danke!
Keine Ahnung ob das eine neue Delphi Version benötigt bzw. ob es da überhaupt Komponente für Delphi gibt.

Bei mir sieht es dann in etwa so aus.

gruss

Ghostwalker 13. Mär 2017 12:23

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
@EWeiss

Ich hab die auch nicht (aber mal suchen gehen obs da nicht was gibt :) ). Wo es geht verwende ich auch normale Vortschrittsbalken, aber da mußt du halt vorher Anfangs- und Endwert vorher wissen.

t.roller 13. Mär 2017 15:15

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe hier ein kleines Programm gefunden, mit dem man sich verschiedene Cursor anzeigen lassen kann.

p80286 13. Mär 2017 17:38

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Ich nutze immer wieder mal den DOS-Turner

Delphi-Quellcode:
const
  TA=Array[0..7] of char='-\|/-\|/';


Label1.Caption:=TA[Count and $0F];
Gruß
K-H

himitsu 13. Mär 2017 17:50

AW: Windows-Designfrage: Mauscursor "Hintergrundaktivität" versus "ausgelastet"
 
Zitat:

Zitat von p80286 (Beitrag 1364072)
Ich nutze immer wieder mal den DOS-Turner

Den Timer nicht vergessen.

Obwohl wenn ich das auch manchmal noch so mache, mit der manuellen Strichgrafik. :oops:
TAniIndicator (FMX), TAnimate (VCL), bzw. ein animiertes GIF oder eine ProgressBar im Marquee-Style.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:42 Uhr.

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