在文件之间传递参数

tmdag

我有两个 python QT 应用程序 - MainApp 和 Editor。我希望两者都能够独立运行,以便您可以单独运行编辑器,或者您可以从 mainApp 打开编辑器并将其参数传递给编辑器。

动作捕捉代码:

第一个.py

from PyQt5.QtWidgets import QMainWindow, QApplication
from second import Editor

class MainApp(QMainWindow):
    def __init__ (self, parent=None):
        super(MainApp, self).__init__(parent) 

        self.myArg = "hello"
        Editor(self, self.myArg)

if __name__ == '__main__':
    import sys
    app = QApplication(sys.argv)
    MainWindow = QMainWindow()
    MainApp = MainApp()
    sys.exit(app.exec_())

第二个.py

from PyQt5.QtWidgets import QMainWindow

class Editor(QMainWindow):
    def __init__ (self, myArg, parent=None):
        self.myArg = myArg
        super(Editor, self).__init__(parent) 

        print(self.myArg)

当我尝试将一些数据从 mainApp (first.py) 传递到 second.py 时,出现错误:

TypeError: QMainWindow(parent: QWidget = None, flags: Union[Qt.WindowFlags, Qt.WindowType] = Qt.WindowFlags()): argument 1 has unexpected type 'str'
尼罗

编辑器__init__()方法接受一个字符串 ( myArg) 和一个可选的父级,然后给它一个MainApp( self) 和一个字符串。MainApp不能被转换string让你拥有TypeError

我想你误解self了方法参数__init__()您不必自己提供,因为 Python 将当前正在初始化的对象提供给方法。只需更改此行即可:

Editor(self.myArg)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在路线之间传递参数

来自分类Dev

在脚本之间传递参数

来自分类Dev

在python类之间传递参数

来自分类Dev

在Powershell脚本之间传递参数

来自分类Dev

在许多类之间传递参数

来自分类Dev

Java在方法之间传递参数

来自分类Dev

在页面之间传递参数离子

来自分类Dev

差异文件输出硬编码文件路径和之间传递的命令行参数

来自分类Dev

如何在express.js中的两个javascript文件之间传递参数

来自分类Dev

如何使用require.js在两个JavaScript文件之间传递参数

来自分类Dev

在Java中传递文件参数

来自分类Dev

传递.php文件作为参数

来自分类Dev

Powershell从文件传递命名参数

来自分类Dev

在c和内联汇编之间传递参数

来自分类Dev

使用MVVMLight在ViewModel之间传递参数

来自分类Dev

在Qt进程之间传递参数?

来自分类Dev

在MVVM Cross ViewModel之间传递简单参数

来自分类Dev

如何在managedBean之间传递参数

来自分类Dev

访问在UWP页面之间传递的参数

来自分类Dev

在Verilog中的模块之间传递参数

来自分类Dev

如何在屏幕之间成功传递参数?

来自分类Dev

不同对象类型之间的参数传递

来自分类Dev

在c和内联汇编之间传递参数

来自分类Dev

如何在managedBean之间传递参数

来自分类Dev

Javascript无法在函数之间传递参数

来自分类Dev

在PHP和Shell之间来回传递参数

来自分类Dev

在片段之间传递对象作为参数

来自分类Dev

AngularJS:在控制器之间传递参数

来自分类Dev

无法在中间件之间传递参数