如何从被调用的模块中更新实例变量

西摩古木

我认为我的答案与此答案有关,但无法完全理解。

我现在意识到我的代码结构不是很好,但是当前的设置是:

main_run.py

app = QtGui.QApplication(sys.argv)
app.processEvents()
ui1 = new_main_ui.Ui_Form_Main()
ui1.show()
sys.exit(app.exec_())

new_main_ui

class Ui_Form_Main(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.setupUi(self)
        ...etc...

此类中的Qlabel对象在单击UI上的按钮时会对其文本进行更新。

new_main_ui中,有一个调用另一个模块(sqr_pull.py)的功能。sqr_pull.py进行一半时,我想更新UI中的Qlabel,但是我不知道如何在不获取以下内容的情况下引用UI实例(ui1):

NameError: name 'ui1' is not defined

我尝试尝试通过以下方式传递变量sys.modules[__name__]

main_run中new_main_ui.parent1 = sys.modules[__name__]

new_main_ui中sqr_pull.parent2 = sys.modules[__name__]

然后在sqr_pull中尝试使用`parent2.QLabel.setText(“ blahblahblah”)进行更改

但它再次无法识别实例名称。最好的方法是什么?

布鲁诺·德斯胡里尔斯

授予函数访问对象的干净方法是将该对象传递给函数...

# worker.py

def work(ui):
    some_result = do_something()
    ui.update(some_result)
    other_result = do_something_else()

# ui.py

import worker

class Ui(object):
    def some_action(self):
        worker.work(self)        

    def update(self, data):
        self.show_data_somewhere(data)

与黑客sys.modules或什么,只会导致一些难以维护一塌糊涂。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Ruby中调用实例变量

来自分类Dev

如何让实例变量在包含的Ruby模块中持久存在

来自分类Dev

在customadapter中调用notificationdatasetchanged()后如何更新OnStart()中的变量

来自分类Dev

包含的模块不能调用父类的实例变量

来自分类Dev

Ruby mixin - 访问类实例中的模块实例变量

来自分类Dev

在python子进程模块中调用adb时如何防止后台进程的新实例

来自分类Dev

方法中未调用实例变量

来自分类Dev

如何制作可在类和每个模型实例中访问的模块变量?

来自分类Dev

EventMachine模块的实例变量

来自分类Dev

如何更新实例变量JAVA的值

来自分类Dev

Nodejs关闭变量未在模块中更新

来自分类Dev

更新模块中的变量值

来自分类Dev

如何在VB Excel中从另一个模块调用一个模块中的变量

来自分类Dev

如何从 Ruby 中的实例方法访问模块?

来自分类Dev

如何将对象变量发送到由BackgroundWorker实例调用dowork的方法中?

来自分类Dev

如何在 Ruby 的扩展模块中使用类实例变量?

来自分类Dev

调用目标时如何更新变量?

来自分类Dev

如何在调用 tableView 之前更新变量

来自分类Dev

如何从函数中调用变量

来自分类Dev

更新方法调用中的变量

来自分类Dev

在模块内部设置实例变量

来自分类Dev

实例变量不会更新

来自分类Dev

如何在Python中调用类的实例?

来自分类Dev

如何在Erlang中动态调用模块?

来自分类Dev

如何在python中调用模块

来自分类Dev

如何在RSpec中模拟实例变量

来自分类Dev

如何访问数组中的实例变量?

来自分类Dev

如何在lua中引用实例变量?

来自分类Dev

如何访问数组中的实例变量?

Related 相关文章

热门标签

归档