Problem mit dem Kopieren in das Edit-Control

  • Hallo,

    ich habe da ein Problem mit dem kopieren eines mehrzeiligen Textes in ein Edit-Control.

    Der Text, den ich kopieren will hat 650 Zeilen und befindet sich in der Zwischenablage von Windows.

    Ich verwende beim Kopieren, die ganz normale Zwischenablage von Windows 10 ohne irgendwelche Clipboardmanager usw.

    Und zum testen des ganzen verwende ich folgendes Script:

    AutoIt v3 Script (neu).au3

    Nun zu dem Problem.

    Wenn ich den Text, wie im Testscript, mit dem Befehl "ClipGet()" einfügen lasse, so werden alle Zeilen ins Edit-Control kopiert.

    Kopiere ich dagegen den Text mit den Tasten "<Strg> + <V>" ins Edit-Control, so werden nicht alle Zeilen kopiert.

    Gibt es da eventuell eine Grenze beim einfügen mit den Tasten?

    Da es ja mit "ClipGet()" funktioniert, ist der zu Kopierende Text wohl nicht zu lang o.ä.

    Wie kann ich erreichen, dass auch mit den Tasten alle Zeilen des Textes kopiert werden?

    MfG:

    BigRox

  • Nun zu dem Problem.

    Wenn ich den Text, wie im Testscript, mit dem Befehl "ClipGet()" einfügen lasse, so werden alle Zeilen ins Edit-Control kopiert.

    Kopiere ich dagegen den Text mit den Tasten "<Strg> + <V>" ins Edit-Control, so werden nicht alle Zeilen kopiert.

    Bei mir (Win 7, AutoIt 3.3.14.0) macht es keinen Unterschied, wie ich den Text (siehe Anhang) einfüge.

    Kannst Du mal einen Text posten, bei dem das passiert, oder ist das bei Dir immer so ?

  • Hier Dein Skript (überarbeitet) als Code :

    Ich habe noch schnell drei Buttons hinzugefügt, um das Handling zu erleichtern.

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    Einmal editiert, zuletzt von Musashi (7. Juli 2021 um 17:31) aus folgendem Grund: Quit in der Loop vergessen

  • Musashi,

    hier mal der Text mit dem ich dieses Problem habe.

    Es handelt sich um ein etwas längeres AutoIt-Script.

    AutoIt v3 Script (neu) (2).au3

    Beim Einfügen mit den Tasten endet das Script bei Zeile 506 egal wie Groß man das Edit-Control einstellt.

    Ich habe es eben auch mal mit dem Text von dir ausprobiert und damit geht es auch bei mir.

    Ich habe eben mal deinen Text bis 700 Zeilen verlängert und es damit erneut probiert.

    Beim Einfügen mit der Tastatur ist bei Zeile 294 Schluss und mit "ClipGet()" erscheinen alle Zeilen.

    MfG:

    BigRox

    Einmal editiert, zuletzt von BigRox (7. Juli 2021 um 17:22) aus folgendem Grund: Ergebnis des Tests mit 700 Zeilen hinzugefügt.

  • Beim Einfügen mit den Tasten endet das Script bei Zeile 506 egal wie Groß man das Edit-Control einstellt.

    Ja, das ist bei mir reproduzierbar. Ich schaue mal, woran das liegen könnte.

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    Einmal editiert, zuletzt von Musashi (7. Juli 2021 um 17:55)

  • Die Puffergröße der Zwischenablage spielt hier keine Rolle (wäre eh riesig)

    Das Problem mit STRG + V wird gelöst, indem man mit _GUICtrlEdit_SetLimitText($idEdiText, 256000) das Zeichenlimit des Edit-Controls auf hier z.B. 256000 Zeichen erhöht (es geht auch mehr).

    Beispielskript :

    ClipGet() macht das offenbar automatisch.

    86598-musashi-c64-png

    "Am Anfang wurde das Universum erschaffen. Das machte viele Leute sehr wütend und wurde allenthalben als Schritt in die falsche Richtung angesehen."

    Einmal editiert, zuletzt von Musashi (7. Juli 2021 um 17:57) aus folgendem Grund: Typo