Seite 1 von 1
zwischenablage auslesen
Verfasst: Sonntag 26. März 2006, 18:29
von ice
kann mir jemand helfen . wie kann ich mit python die zwischenablage auslesen ? das einbuinden in mein fenster ist dann kein problem mehr !!
suche jetzt seit 2 tage und komme nicht weiter . brauche das aber dringend für ein projekt ,.
ich hoffe es kann jenmand helfen
gruß und dank ice
Verfasst: Sonntag 26. März 2006, 18:41
von Mr_Snede
Hat dir dieser Beitrag:
http://www.python-forum.de/viewtopic.ph ... chenablage
nicht weitergeholfen?
cu Sebastian
zwischenablage
Verfasst: Montag 27. März 2006, 08:45
von ice
guten morgen den hatte ich schon gefunden der hilft aber nix da ich auslesen
will und nicht in die zwischenablage kopieren .
und zu sagen der user des programms soll strg+v nehmen ist etwas billig .
noch ne idee ?
gruß ice
Verfasst: Montag 27. März 2006, 11:23
von Mr_Snede
kannst du bitte etwas genauer beschreiben, wie der Bedienungsablauf für den Benutzer aussehen soll?
Wo kommten die Daten für die Zwischenablage her,
wie kommen die da rein,
wo sollen die Daten eingefüegt werden?
cu Sebastian
PS: Ändert zwar nichts an deinem Problem, aber schade, dass STRG+v keine Option ist.
genauere erklärung
Verfasst: Montag 27. März 2006, 11:37
von ice
die daten werden von einem scannerstift in die zwischenablage kopiert (eingefügt)
das funktioniert gut kann die daten mit paste auch überall ( word usw )einfügen.
diese daten will ich dann in ein text-fenster ausgeben und als txt speichern.
dazu muß ich sie aber aus der zwischenablage auslesen
gruß mike
Verfasst: Montag 27. März 2006, 12:31
von Mr_Snede
Ah cooles Projekt.
Code: Alles auswählen
import Tkinter
def make_menu(w):
global the_menu
the_menu = Tkinter.Menu(w, tearoff=0)
the_menu.add_command(label="Cut")
the_menu.add_command(label="Copy")
the_menu.add_command(label="Paste")
def show_menu(e):
w = e.widget
the_menu.entryconfigure("Cut",
command=lambda: w.event_generate("<<Cut>>"))
the_menu.entryconfigure("Copy",
command=lambda: w.event_generate("<<Copy>>"))
the_menu.entryconfigure("Paste",
command=lambda: w.event_generate("<<Paste>>"))
the_menu.tk.call("tk_popup", the_menu, e.x_root, e.y_root)
t = Tkinter.Tk()
make_menu(t)
e1 = Tkinter.Entry(); e1.pack()
e2 = Tkinter.Entry(); e2.pack()
e1.bind_class("Entry", "<Button-3><ButtonRelease-3>", show_menu)
t.mainloop()
Fundstelle
Benutze die Rechte Maustaste zum Ausprobieren.
Lösungsansatz:
<<Paste>> in einen Thread packen, der regelmäßig dein Textwidget aktualisiert.
cu Sebastian
Verfasst: Montag 27. März 2006, 16:46
von jAN
das Tk-widget von Tkinter hat eine methode clipboard_append("String")
vielleicht kannst du damit was anfangen[/code]
neue probs
Verfasst: Mittwoch 29. März 2006, 06:26
von ice
vielen dank für die hilfe .. habe das problem jetzt gelöst hier das code bsp :
Code: Alles auswählen
import win32clipboard as w
import win32con,re
w.OpenClipboard()
d=w.GetClipboardData(win32con.CF_TEXT) +" \n"
textfenster.insert(END,d)
w.CloseClipboard()
aber neue probleme tuen sich auf .. wie beende ich eine in einem tk geöffnette exe wieder ?
gruß ice
Edit (Leonidas): Code in Python-Tags gesetzt.
Re: neue probs
Verfasst: Mittwoch 29. März 2006, 11:24
von Mr_Snede
ice hat geschrieben:aber neue probleme tuen sich auf .. wie beende ich eine in einem tk geöffnette exe wieder ?
Mach dafür besser einen neuen Thread auf und zeige uns den Quellcode.
Bitte setze dein Quellcode oben in Python Tags, dann werden auch die Einrückungen richtig angezeigt.
cu Sebastian
Re: zwischenablage auslesen
Verfasst: Dienstag 11. April 2006, 19:26
von Michael Schneider
ice hat geschrieben:kann mir jemand helfen . wie kann ich mit python die zwischenablage auslesen ? das einbuinden in mein fenster ist dann kein problem mehr !!
suche jetzt seit 2 tage und komme nicht weiter . brauche das aber dringend für ein projekt ,.
ich hoffe es kann jenmand helfen
gruß und dank ice
Hallo ice,
eigentlich wollte ich DIR eben die Antwort schreiben, bin aber irgendwie in den falschen Thread gerutscht, sorry.
Zufälligerweise bin ich vor ebenfalls ca. zwei Wochen, beim Schmökern in "Das Python-Buch", auf eine genial einfache Lösung gestoßen, um die Zwischenablage in Tkinter (sowohl unter Windows als auch unter UNIX) auszulesen. Du findest meinen Artikel hier:
http://www.python-forum.de/viewtopic.php?p=34856#34856
Der Schlüssel ist:

entry.selection_get(selection="CLIPBOARD")
Wenn möglich würde ich gern mit Dir in Kontakt treten, da auch ich eine Python-Scanner Anwendung plane und mich gern mit Dir austauschen würde.
Vielen Dank,
der Michel (sky)