Automatisch Button drücken nachdem der Input ausgefüllt wurde

  • Hallo zusammen,

    ich muss ein Scrip schreiben der es ermöglicht das sich ein Button in meiner GUI automatisch drückt sobald ich in den Input eine 4-stellige zahl eingetippt habe.

    Ich habe überall nachgelesen, aber leider nichts gefunden zu dem Thema. Ich hoffe ihr könnt mir weiter helfen.

    Vielen Dank Schonmal im vorraus

  • Dein Button führt ja eine Funktion aus, wenn er gedrückt wird.

    Genauso machst du das für ein Inputfeld (der Aufruf an sich) und dort prüfst du dann auf Zeichen länge und führst dann ggf. die Funktion des Buttons aus (Achtung: bei dem Beispiel wird ein "Enter" nach der Eingabe benötigt):

    3 Mal editiert, zuletzt von Moombas (23. März 2023 um 15:14)

  • Würde so auch ohne "Enter" gehen:

  • Keine Ursache, generell ein kleiner Tipp: Versuch mal nicht "in der GUI" zu denken, sondern "im Code".

    Was das Bedeutet: Du suchst dadurch nach dem falschen Ansatz "ein Button muss unter Bedingung X gedrückt werden", wodurch du in deiner Suche zu keinem vernünftigen Ergebnis kommst. Was du aber eigentlich willst ist "der Code/die Funktion (vom Button) muss unter Bedingung X ausgeführt werden".

    Das ist ein häufiger Denkfehler (keine Sorge: nicht nur von dir), wenn man versucht eine Lösung zu finden.

    Einmal editiert, zuletzt von Moombas (24. März 2023 um 15:32)

  • Was du aber eigentlich willst ist "der Code/die Funktion (vom Button) muss unter Bedingung X ausgeführt werden".

    THIS! Was zu dem logischen Ergebnis führt, dass überhaupt kein Button nötig ist um die Eingabe zu bestätigen.

    Das ist ein häufiger Denkfehler (keine Sorge: nicht nur von dir), wenn man versucht eine Lösung zu finden.

    Win10 Anmeldung/Smartphone: Nach der Eingabe der 4.Ziffer automatisches einloggen (ohne Enter/Bestätigungstaste) :thumbup:

    Es gibt aber jede Menge Negativbeispiele, bei der eine definierte Eingabe extra bestätigt werden muss :thumbdown:

  • Das ist richtig :)

    Evtl. war sein Button ja auch nur der 1. Versuch es zum Laufen zu bringen.

    Win10 Anmeldung/Smartphone: Nach der Eingabe der 4.Ziffer automatisches einloggen (ohne Enter/Bestätigungstaste) :thumbup:

    Wer sagt denn, das eine Pin immer 4 Zeichen lang ist? Die Zeiten haben wir doch gehabt, man kann doch schon lange längere Pins verwenden.

    Es gibt aber jede Menge Negativbeispiele, bei der eine definierte Eingabe extra bestätigt werden muss :thumbdown:

    Leider ja, wobei ja teilweise bereits während der Eingabe eine optische Meldung erscheint (z.B. beim Setzen eines neuen Passworts), das Bedingung x/Y nicht geben ist.

  • Wer sagt denn, das eine Pin immer 4 Zeichen lang ist? Die Zeiten haben wir doch gehabt, man kann doch schon lange längere Pins verwenden.

    GENAU DARUM GEHTS! Wer in der Lage ist, nach bspw. 4 eingegebenen Zeichen die Eingabe zu beenden und das Programm/Script weiterzuführen, der sollte das dann auch bei StringLen($pin) hinbekommen...aber genau daran liegt es, wenn Anwender immer wieder in ihrem eigentlichen Arbeitsablauf unterbrochen werden um Taste X zu drücken oder Button Y wegzuklicken. Die Programmierer, welche vom eigentlichen Arbeitsablauf keine Ahnung haben, setzen das Lastenheft, erstellt von einem Vorgesetzten, welcher vom Arbeitsablauf idR auch keine oder nur wenig Ahnung hat, so um, wie es für sie am einfachsten/schnellsten geht. Kaum jemand analysiert Arbeitsabläufe um diese, auch hinsichtlich Ergonomie, zu optimieren!

    Dabei sind die "reinen" Bildschirmarbeiter noch im Vorteil weil sich die Tätigkeit auf "einfaches" Tastaturgeklimper oder Mausgeklicker (oft auch abwechselnd in Sequenzen :Face: ) beschränkt. DAS kostet maximal Zeit und führt langfristig zu "geringen" Schmerzen wie bspw. den "Mausarm", was den Programmierer als auch den Vorgesetzten des Mitarbeiters idR einen SCH*** interessiert!

    Wenn Mitarbeiter chronisch krank sind/werden, dann wird sich oft seitens Arbeitgeber darüber lauthals beschwert, aber wenn du genau diese Arbeitgeber dann fragst, WARUM die Mitarbeiter "dauernd" krank sind bzw. ihre Ziele oder Ergebnisse nicht erreichen, dann triffst du auf völlige Verständnislosigkeit. Ich bin da tiefenentspannt, habe in meiner Tasche immer zwei Overalls (Größe M und XL^^) dabei, und sage, ich könne das "Problem" innerhalb von 5-10 Minuten LANGFRISTIG lösen....

    Auf die Frage nach dem "Wie DAS denn?" fordere ich den Vorgesetzten/Arbeitgeber auf den Arbeitsplatz einzunehmen (in "schmutzigen" Produktivunternehmen dafür den Overall) und mit der Arbeit anzufangen. Nach Instruktion durch den Mitarbeiter, was meist nur 1-2 Minuten dauert, erkennt der Vorgesetzte/Arbeitgeber in den nächsten 2-3 Minuten SOFORT, wo das eigentliche Problem liegt....und weist idR auch SOFORT die Umgestaltung dieses Arbeitsplatzes an! Das ist MEINE Erfahrung!

    Diejenigen, die sich nicht mal "herablassen" den Arbeitsplatz ihrer eigenen Untergebenen zu betreten bzw. nur einige Augenblicke deren Arbeit zu machen sind in der Führungsebene sowieso fehl am Platz! Da weiß ich dann sofort, wo das "Problem" liegt und DAS wird dann von mir auch ohne Umschweife so kommuniziert! "Sie hatten mich gefragt, wieso so viele ihrer Mitarbeiter so lange "krank feiern"....ich gebe Ihne jetzt die Antwort: Weil SIE ihren Job nicht richtig machen!"

    Und DAS geht auch an die Programmierer! Denn die zwingen den Anwendern den Arbeitsablauf auf, den sie selbst nicht (langfristig) machen würden. Daher:

    MACHT EUREN JOB RICHTIG!

    Und versucht die Betriebsblindheit zu überwinden ;)

    Leider ja, wobei ja teilweise bereits während der Eingabe eine optische Meldung erscheint (z.B. beim Setzen eines neuen Passworts), das Bedingung x/Y nicht geben ist.

    In einem Fenster, dass mit MausKlick auf den OK-Button bestätigt werden muss :rofl:.

    Natürlich soll das NICHT so sein! Die Info, dass eine "unzulässige" Aktion (bspw. Taste) eingegeben wurde, gehört in das Fenster mit dem Eingabefeld, zusammen mit der Angabe der zulässigen Möglichkeiten. Der Eingabecursor bleibt im Eingabefeld. Wenn dann die "Fehleingabe" auch noch akustisch, denn genau dafür gibt es die "Standard"-Windows-Sounds, mitgeteilt wird, werden auch "Blindschreiber" wach^^.

    Wieso muss ich als Anwender die Finger von der Tastatur nehmen um mit der Maus auf Buttons rumzuklickern damit es weiter geht?! Wieso wissen die meisten Anwender nicht, dass man mit der TAB-Taste zum/in das nächste Eingabefeld/Button usw. springen kann?! Fragen über Fragen... :rtfm:  :)

    Das ist richtig :)

    Evtl. war sein Button ja auch nur der 1. Versuch es zum Laufen zu bringen.

    Amen! Ich hoffe so sehr, das du damit richtig liegst 8o

    ciao
    Andy


    "Schlechtes Benehmen halten die Leute doch nur deswegen für eine Art Vorrecht, weil keiner ihnen aufs Maul haut." Klaus Kinski
    "Hint: Write comments after each line. So you can (better) see what your program does and what it not does. And we can see what you're thinking what your program does and we can point to the missunderstandings." A-Jay

    Wie man Fragen richtig stellt... Tutorial: Wie man Script-Fehler findet und beseitigt...X-Y-Problem

    Einmal editiert, zuletzt von Andy (27. März 2023 um 12:11)

  • Diejenigen, die sich nicht mal "herablassen" den Arbeitsplatz zu ihrer eigenen Untergebenen zu betreten bzw. nur einige Augenblicke deren Arbeit zu machen sind in der Führungsebene sowieso fehl am Platz!

    Leider wahr, nur selten schwer zu ändern, wenn es ganu die sind, die sich nach Oben gut verkaufen :|

    Und DAS geht auch an die Programmierer! Denn die zwingen den Anwendern den Arbeitsablauf auf, den sie selbst nicht (langfristig) machen würden. Daher:

    MACHT EUREN JOB RICHTIG!

    Bekloppterweise habe ich dazu noch eine andere Erfahrung: Man merkt z.B. als Programmierer, das es optimaler wäre, den Arbeitsablauf zu ändern und weist darauf hin und das man das entsprechend ein-/umbauen könnte aber der Mensch ist ein Gewohnheitstier = das war shcon immer so, das soll so bleiben... was soll man da noch machen.

    Aber wir schweifen ab ;)

  • Keine Ursache, generell ein kleiner Tipp: Versuch mal nicht "in der GUI" zu denken, sondern "im Code".

    Was das Bedeutet: Du suchst dadurch nach dem falschen Ansatz "ein Button muss unter Bedingung X gedrückt werden", wodurch du in deiner Suche zu keinem vernünftigen Ergebnis kommst. Was du aber eigentlich willst ist "der Code/die Funktion (vom Button) muss unter Bedingung X ausgeführt werden".

    Das ist ein häufiger Denkfehler (keine Sorge: nicht nur von dir), wenn man versucht eine Lösung zu finden.

    Danke dir für dein Tipp, werde versuchen das so umzusetzen. Du hast recht es hat auch viel mit der Art zu denken zu tun. Ich bin noch relativ neu hier in diesem AutoIt game, und freu mich wenn ich bishen was durch erfahrene Leute (wie dich) mitnehmen kann.

  • Das ist etwas, das wirst du nicht nur hier, sondern generell beim Programmieren und vielen anderen Dingen brauchen können -> das eigentliche Problem nochmal durchgehen und analysieren ob das, wonach man gerade sucht, wirklich das ist, was man braucht ;)

    Das ist auch oft der Grund warum viele bei der Internetsuche auf die Nase fallen und dann ggf. auch hier mal den Hinweis auf einen (vermeintlich) leicht zu findenen Eintrag in der Google-Suche bekommt. Der Unterschied liegt ganz oft nur bei anderen Suchbegriffen und der Hinweis ist in der Regel nicht böse gemeint, sondern zeigt genau auf das was ich oben geschrieben habe.

    Und glaub mir, selbst erfahrenen Leuten passiert das immer mal wieder. Ganz besonders wenn man 100% davon überzaugt ist nach dem Richtigen zu suchen ;)

  • Das ist etwas, das wirst du nicht nur hier, sondern generell beim Programmieren und vielen anderen Dingen brauchen können -> das eigentliche Problem nochmal durchgehen und analysieren ob das, wonach man gerade sucht, wirklich das ist, was man braucht ;)

    Das ist auch oft der Grund warum viele bei der Internetsuche auf die Nase fallen und dann ggf. auch hier mal den Hinweis auf einen (vermeintlich) leicht zu findenen Eintrag in der Google-Suche bekommt. Der Unterschied liegt ganz oft nur bei anderen Suchbegriffen und der Hinweis ist in der Regel nicht böse gemeint, sondern zeigt genau auf das was ich oben geschrieben habe.

    Und glaub mir, selbst erfahrenen Leuten passiert das immer mal wieder. Ganz besonders wenn man 100% davon überzaugt ist nach dem Richtigen zu suchen ;)

    Ja das stimmt allerdings :) .Ich nehme auch nichts böse im Gegenteil, ich finde es korrekt wenn man Kritik (gut / oder schlecht ) äußert. Nicht jeder Mensch denkt gleich jeder hat andere Gedankens- Vorgangsgänge. Du hast aufjedenfall recht weil man muss wissen was man sucht, und wenn mal falsch sucht wird man nicht fündig. Das war dann mein Fehler, sonst hätte ich hier ja nicht nachgefragt hahaha.

  • Und das ist auch kein Problem, wir helfen hier alle gerne, besonders wenn man den Eindruck hat das am anderen Ende dies auch angenommen wird. ;)

    Wird aufjedenfall angenommen :) . Ich danke dir für deine Zeit, und wünsche dir noch ein angenehmen Tag.