[Windows] Nicht aktive App soll QClipboard change erhalten
Verfasst: Dienstag 27. Januar 2015, 08:16
Guten Morgen!
Unter Linux habe ich ein Tool geschrieben, das mit einer Instanz von QClipboard die Zwischenablage überwacht und bei jeder Änderung darin ausgeführt wird:
Das funktioniert wunderbar. Egal wo ich unter Linux etwas in die Zwischenablage einfüge, das Programm bekommt das Signal und kann entsprechend reagieren. Auch dann wenn das Programm nicht im Vordergrund läuft.
Unter Windows funktioniert das leider nicht. Hier kann ich so lange etwas in die Zwischenablage einfügen wie ich will, das Programm bekommt das Signal über die Änderung erst, wenn das Fenster wieder aktiv wird.
Wenn ich also im Notepad etwas kopiere, dann bliebt das Programm im Hintergrund ruhig, wenn ich dann aber eines der Fenster der app anklicke wird das Signal entsprechend abgefeuert.
Ich würde aber gerne im Hintergrund die Zwischenablage überwachen und immer über jeden change informiert werden. Auch unter Windows.
Nach der Dokumentation hätte ich ja eigentlich gedacht, dass es umgekehrt ist:
Hat jemand vielleicht einen Tipp für mich, wie ich das unter Windows trotzdem realisieren kann?
Danke!
Unter Linux habe ich ein Tool geschrieben, das mit einer Instanz von QClipboard die Zwischenablage überwacht und bei jeder Änderung darin ausgeführt wird:
Code: Alles auswählen
self.connect(self.clipboard, Qt.SIGNAL("changed(QClipboard::Mode)"),
self.clipboard_changed)
Unter Windows funktioniert das leider nicht. Hier kann ich so lange etwas in die Zwischenablage einfügen wie ich will, das Programm bekommt das Signal über die Änderung erst, wenn das Fenster wieder aktiv wird.
Wenn ich also im Notepad etwas kopiere, dann bliebt das Programm im Hintergrund ruhig, wenn ich dann aber eines der Fenster der app anklicke wird das Signal entsprechend abgefeuert.
Ich würde aber gerne im Hintergrund die Zwischenablage überwachen und immer über jeden change informiert werden. Auch unter Windows.
Nach der Dokumentation hätte ich ja eigentlich gedacht, dass es umgekehrt ist:
(von hier)Windows and Mac OS X does not have the concept of ownership; the clipboard is a fully global resource so all applications are notified of changes.
Hat jemand vielleicht einen Tipp für mich, wie ich das unter Windows trotzdem realisieren kann?
Danke!