2016-08-15 36 views
0

當我使用其他程序(例如,打開pdf或單詞)時,我將通過使用鼠標選擇一些文本內容(如單詞或段落)。我希望我的Python程序能夠獲取這些文本內容。如何使用PyQt或其他一些Python庫來做到這一點?從其他程序獲取所選文字內容

+1

請仔細閱讀http://stackoverflow.com/help /不要問。祝你好運 – shellter

回答

1

這是一件容易的事,你沒有指定PyQt的版本,所以我會張貼PyQt4的解決方案,在這裏你去:

from PyQt4.QtCore import QObject, pyqtSlot, SIGNAL, SLOT 
from PyQt4.QtGui import QApplication, QMessageBox 
import sys 


class MyClipboard(QObject): 

    @pyqtSlot() 
    def changedSlot(self): 
     if(QApplication.clipboard().mimeData().hasText()): 
      QMessageBox.information(None, "Text has been copied somewhere!", 
            QApplication.clipboard().text()) 


def main(): 
    app = QApplication(sys.argv) 
    listener = MyClipboard() 

    app.setQuitOnLastWindowClosed(False) 
    QObject.connect(QApplication.clipboard(), SIGNAL(
     "dataChanged()"), listener, SLOT("changedSlot()")) 

    sys.exit(app.exec_()) 

if __name__ == '__main__': 
    main() 
+0

Thx爲你的幫助,我已經在我的電腦上運行你的代碼。我只想選擇單詞而不是選擇單詞並複製(ctrl + v)。所以,我認爲使用系統剪貼板不是一個好的解決方案。 – mahome