猿问

即使我没有使用它,导入 pywinauto 包时 Python 也停止工作

我尝试使用“pywinauto”包并且它有效。但是当我关闭应用程序时,python 提示一条消息“python 已停止工作”。我sys.coinit_flags = 2按照瓦西里·里亚博夫的建议补充说,警告消失了。


from PyQt5.QtWidgets import QApplication, QWidget, QPushButton

import sys

import warnings

warnings.simplefilter("ignore", UserWarning)

sys.coinit_flags = 2

from pywinauto.application import Application

from pywinauto.keyboard import send_keys



class App(QWidget):


    def __init__(self):

        super(App,self).__init__()

        self.title = 'PyQt5 button - pythonspot.com'

        self.left = 10

        self.top = 100

        self.width = 320

        self.height = 200


        self.setWindowTitle(self.title)

        self.setGeometry(self.left, self.top, self.width, self.height)


        button = QPushButton('PyQt5 button', self)

        button.setToolTip('This is an example button')

        button.move(100, 70)

        button.clicked.connect(self.on_click)


        self.show()


    def on_click(self):

        print('PyQt5 button click')


def main():

    app = QApplication(sys.argv)

    app.setStyle('Fusion')


    w = App()

    sys.exit(app.exec_())


if __name__ == '__main__':

    main()

但是,当我尝试使代码变得复杂时,如果我单击第一个组合框以选择值“ar-prod”,则会再次提示警告消息。

这是警告消息。 

如果我删除self.cb1.addItems(['ar-dev', 'ar-prod'])并且不填充第一个组合框,则不会发生错误。


九州编程
浏览 163回答 1
1回答

Smart猫小萌

sys.coinit_flags = 2导入 pywinauto 之前需要。就像这里显示的那样:https ://github.com/pywinauto/py_inspect/blob/master/py_inspect.py
随时随地看视频慕课网APP
我要回答