Navigationsleiste in Formularen - Windows-TesterInnen gesucht

Ich habe hier ein Verhalten bei Navigationsleisten in Formularen, dass unter Linux nie auftaucht. Bei Windowsnutzern taucht aber anscheinend immer wieder einmal das folgende Problem auf:
Für Formulare gibt es in Base (oder Writer/Calc - je nachdem, wo ich eben Formulare nutze) eine Navigationsleiste, die ich in dem Formular aufziehen kann um durch die Daten zu navigieren. Wird bei diesen Navigationsleisten der nächste Datensatz aufgerufen, so zeigt der Datensatzzeiger das auch korrekt an.
Nicht so unter Windows. Dort springt das Ganze auch schon einmal von Datensatz 1 zu Datensatz 3 oder 4. Dieses Springen ist anscheinend davon abhängig, wie lange ich die Maus nach dem Tastendruck über dem entsprechenden Button stehen lasse. Diese Zeit wird auch vielleicht noch dadurch beeinflusst, wie groß denn die Datenmenge ist, durch die navigiert werden soll.
Ich möchte das gerne als Bug melden, kann das nur mangels Windows nicht nachvollziehen. Deswegen hänge ich hier eine Datenbankdatei an, die 3 Formulare enthält. Ein Formular greift auf eine Datenbasis von 4000 Datensätzen zu, das andere auf 100 Datensätze und schließlich noch eins mit 10 Datensätzen.
Ist ein Formular geöffnet, so muss nur auf die Navigationsleiste für den nächsten Datensatz gedrückt werden. Die Beobachtungen dazu möchte ich gerne hier sammeln.


Es geht dabei um die hier eingekreiste Taste in der Navigationsleiste.
Navigationbar.odb (254.6 KB)

Zuerst: Saubere Beschreibung und gute Vorlage von dir.


Ich habe die Formulare getestet. Die nachfolgende Beschreibung gilt für alle drei Formule.
Ein kurzer Klick führt immer zum nächsten Datensatz (DS).
Bei längerem Klick werden die weiteren Datensätze durchlaufen.
Beim Formular100 bin ich in 5 Sek. von DS1 zu DS 101 (leerer DS).


Meine Anmerkung: Ich halte dies nicht für einen Fehler des Systems LO (höchstens ein Bedienungsfehler).
Das scheint so gewollt, dass bei längerem drücken immer weiter gesprungen wird (von Ds zu Ds).
Wenn einige Leute damit Probleme haben, sollten sie über das Betriebssystem die Maus-Zeit fürs klicken neu definieren.


Version: 26.2.0.3 (X86_64)
Build ID: 620(Build:3)
CPU threads: 16; OS: Windows 11 X86_64 (build 26200); UI render: Skia/Raster; VCL: win
Locale: de-DE (de_DE); UI: de-DE
Calc: threaded

@Hrbrgr Nach Deiner Schilderung ist das kein Bug. Ich habe aber auch schon in einer Videokonferenz bei einer anderen Datenbank gesehen, wie eben der Verlauf so war, dass der Sprung von 1 nach 3 nach 7 ging und dann erst endete. Und das ist ja bei Dir nicht der Fall.

Ich zitiere einmal aus einem Bericht eines users für die Tabelle mit allen 4000 Datensätzen:

Erst wird sofort auf den 2. Datensatz gewechselt, ab einer Drückdauer von ca. 0,3 sec. dafür aber gleich auf den neunten, sechzehnten…(läuft durch).

Die Mauszeit für’s Klicken → in Linux weiß ich wo ich die einstelle, aber wo soll das für Windows gehen? Die Zeitspanne für einen Doppelklick haben wir gefunden, aber das war es dann auch schon.

Doch, das springt bei mir auch. Das heißt aber nicht, das die DS nicht kontinuierlich durcchlaufen werden, das ist wohl dann eher ein Problem der Aktualisierung für die Anzeige bei einem schnellen Durchlauf.

132446 HB - DB DS-Durchlauf

aber wo soll das für Windows gehen?

Gute Frage, habe ich auch nichts gefunden, sorry.

Vergleichen wir das Verhalten (rechts: Writer, Extras ⟶ Literaturdatenbank):

rec26203_Win11

1 Like

Ich hab’ jetzt den Eindruck, dass das nicht ganz richtig über gekommen ist:
Mit der Maustaste ein Klick. Dann los lassen und schauen.

In beiden Darstellungen scheint es mir so, als ob die Maus beständig gehalten wird.

Ich liefere jetzt einfach einmal die Datenbank, bei der das aktuell (unter Windows bei einem Nutzer) auftaucht. Da wird das Formular frm_Rechnung gestartet und dann durch die Rechnungen des aktuellen Kunden gescrollt. Mit einem Klick landet der Nutzer oft nach ‘1’ auf ‘3’ oder gar ‘4’.
XRechnung_V2602_004.odb (1.3 MB)
Damit Makros nichts beeinflussen: Ohne Makrounterstützung starten, frm_Rechnung aufrufen und die Navigationsleiste betätigen.

Richtig!
Wie schon erwähnt bei kurzem Klick geht es immer um einen DS weiter.
Wenn der Klick etwas länger ist, fängt es an zu springen.
Das Problem ist, das der kurze Klick exakt ausgeführt werden muss.


Anmerkung:
Es gibt ja auch Menschen, deren Gelenkigkeit vielleicht nicht mehr so gegeben ist.
Die könnten dann ein Problem haben.
Oder vielleicht auch mal mit einer anderen Maus testen.

An der Reaktionsfähigkeit oder Gelenkigkeit liegt das wohl eher nicht. Ich habe das vor Jahren schon einmal bei einer DB für eine Firma am Bildschirm gesehen: Da klickte der Nutzer auf den nächsten Datensatz und der Sprung war gleich um mehrere Datensätze weiter. Auch beim Rücksprung solche Probleme, so dass der Nutzer überhaupt Probleme hatte, den nächsten Datensatz irgendwie anzusteuern.

Wenn ich einen Klick etwas länger ausführe dann müsste der Datendurchlauf aber spätestens dann aufhören, wenn ich die loslasse…

Genau so ist es bei mir. Durchlauf mit Stop:

132446 HB - DB DS-DurchlaufMitStop


Einzelklicks:
132446 HB - DB DS-Klicken

Dieses GIF ist hier etwas beschleunigt, etwa 1:2.


Aber Vorsicht, bei mir gibt es im BS folgende mögliche Einstellung:

Wenn ich wirklich nur auf den Button klicke, geht es zum nächsten Datensatz, und zwar beim Mouse-up. Wenn ich aber ein bisschen zu langsam bin beim Loslassen, ende ich auf einem der folgenden Datensätze.

Für mich sieht es so aus, als seien die Mauseinstellungen nicht der Fingerfertigkeit des Benutzers angepasst. Der Benutzer kann wohl keinen “Klick” machen. Ist er sehr jung und kann daher nur “wischen”, und müsste erstmal einen Mausklick üben? Oder ist er etwas eingeschränkt in seiner Fingerbeweglichkeit? Wenn er mit Kraft drückt und dann loslässt, also eine Aktion von einer “Eins-und” Zeitlänge macht, überspringt das Feld einige Datensätze.

Kann man nicht ein Makro schreiben, das die Klick-Geschwindigkeit misst?

Da kommen wir sehr schnell mit dem folgenden Bug ins Gehege: Form - Navigationbar: Unexpected row change when message box appears while changing row of the form.

Mir scheint, dass da einfach unterschiedliche Verzögerungszeiten auf unterschiedlichen Systemen laufen, die von einem Klick zu einem Halten der gedrückten Maustaste unterscheiden. Da wäre natürlich eine Zeit für das Klicken gut.

@RobertG , ich möchte noch auf den Beitrag von @cwolan weiter oben verweisen.
Bei einer Tabelle mit der Standardanzeige für die DS passiert kein springen.
Die DS werden sauber durchgezählt und der Durchlauf ist auch “abgebremst”.

Insofern wäre die Frage, ob es möglich ist den Durchlauf im Formular zu verlangsamen.

@Hrbrgr : Und ich dachte, ich kenne die Formularelemente im Schlaf. Da gibt es doch tatsächlich für die Navigationsleiste die Einstellung “Verzögerung”, die standardmäßig auf ‘20 ms’ steht.

grafik

Irrtum: Das ist nur die Verzögerung beim Durchlauf. Das beeinflusst also die Geschwindigkeit nach dem ersten Auslösen. Wenn ich ‘1’ da stehen habe, dann springt das Ganze in der gewohnten Zeit nach 2 und 3 und dann erst beginnt die Verzögerung für jeden weiteren Sprung. Habe ich vor den Änderungen einmal mit 5000 ms getestet.

Wenn ich 500 ms einstelle, sieht das Ganze schon recht gut aus.


Mit 300 ms fast optimal:

132446 HB - DB DS-Durchlauf300ms


Auch nach einem Zwischenstop bei DS 20.

Nur hat das nichts mit dem eigentlichen Problem zu tun. Es ging ja nicht um das “Durchrauschen” durch sämtliche Datensätze, sondern um das Weiterbewegen von einem Datensatz zum nächsten Datensatz. Und genau den Punkt betrifft eben die Verzögerung nicht.
.
Aus dem Grunde habe ich auch schon einmal die Funktionen für das Springen zum vorhergehenden und nächsten Datensatz auf separate Buttons gelegt und die Navigationsbuttons aus der Navigationsleiste komplett raus genommen. Denn wenn beim Klick auf die Leiste eben doch einfach auch einmal 2 Datensätze gesprungen werden kann das schnell dazu führen, dass irrtümlich falsche Datensätze bearbeitet werden - in meiner Ausgangsdatenbank XRechnung also z.B. Rechnungen falsch erstellt und weitergeleitet werden.