G'天,
我用PySide在Python 3.x中编写了一个软件,它可以从网络目录动态显示图像(如幻灯片)。该软件适用于本地计算机(即幻灯片显示在运行该软件的计算机上)。
我想在中央服务器上运行该软件,然后该服务器临时在本地网络网页上提供幻灯片的每个图像。我已经设法使用Flask库在我的代码中提供静态内容。以下是我的代码片段:
def ServeImage(self, DisplayImage):
app = Flask(__name__)
@app.route("/")
def main():
return '''<img src='{}' />'''.format(url_for('static', filename=DisplayImage))
app.run(host='10.2.x.x', port=5000)
&#39; DisplayImage&#39;是我当前代码的输出图像路径。目前,以上将在浏览器中正确显示指定本地地址的图像。但是,我不确定如何返回软件的幻灯片组件(生成DisplayImage的位置)。似乎一旦调用了ServeImage(),代码就会终止。我相信这是由于这个示例Flask功能的组合方式。我希望的内容在下面的伪代码中有详细说明:
def ServeImage(self, DisplayImage):
app = Flask(__name__)
'''<img src='{}' />'''.format(url_for('static', filename=DisplayImage))
app.run(host='10.2.x.x', port=5000)
#Timer
self.ImageNumber += 1
self.SlideShow()
我不知道这是否可行。如上所述,似乎在调用app.run()时,该特定地址将永久提供,因此app.run()之后的任何代码都将永远不会运行。我喜欢的是:一旦图像被提供(即一旦调用了app.run()),就会改变ImageNumber()变量,并调用主要的SlideShow()函数,然后生成下一个要在网页上提供的DisplayImage。
这里的任何澄清/建议都会很棒!
谢谢!