wxPython与Flask集成

问题描述

我正在尝试将wxPython和Flask集成到单个应用程序中,但是由于它们都希望专用于主线程,因此我不确定如何使它们协同工作。

我通过以下方式调用应用程序:

export FLASK_APP=keypad_controller
python3 -m flask run -p 2020 -h 0.0.0.0 --eager-loading --no-reload

使用Flask的主要代码块是:

from flask import Flask

def create_app(test_config=None):
    app = Flask(__name__)

    return app

我不确定如何将wxPython(如下)集成到上面的代码中,如何运行flask?

    wx_app = wx.App()

    main_window = MainWindow(config)
    main_window.Show()

    wx_app.MainLoop()

解决方法

在单独的线程中启动Flask(app.run())。

并不是说,如果您想要app.run(debug=True),还必须通过use_reloader=False,因为如果Flask决定需要从主线程以外的其他地方重新加载任何东西,事情将很快脱离轨道。 / p>