python streamlit模块 需要两层按钮,第一个按钮截图后,显示第二个按钮替换图片的,现在点击第二个按钮没反应,打印1也没打印,把第二个按钮取消缩进显示出来又是正常的
if st.button('抓取截图'):
Get_pictures.getHost(title) #调用截图程序
image2 = Image.open(f'image/{title}.jpg') # 读取图片
if st.button('替换底图'):
print('1')
old_path = f'image/{title}.jpg'
new_path = f'fixed_image/{title}.jpg'
shutil.copy(old_path, new_path)
我理解你的问题主要是想在Streamlit中实现一个包含两层按钮的界面,并且通过点击这些按钮来触发相应的操作。但是你在代码中遇到了一个特殊情况,即点击第二个按钮没有任何反应,即使将其取消缩进显示出来也是正常的。
针对这个问题,我们需要先检查代码逻辑和语法,确保程序能够正确执行到我们想要的操作。然后,我们需要考虑Streamlit界面设计方面的限制和注意事项,比如按钮的位置和排列方式等。
根据你的代码,我建议你可以尝试调整一下代码的逻辑和结构,将截图和替换图片的操作分别放在两个不同的函数中,并使用嵌套的st.if_button_pressed来实现两层按钮的功能。
Python实战案例,streamlit模块,Python制作销售数据可视化看板
让我们愉快地开始吧~