在实际应用中可能通过按钮操作一些功能,当功能比较多时往往要加入很多按钮,所以按钮的管理就很重要了。下面通过像visual studio中工具栏一样的Toolbox来管理。
具体会用到expander和sidebar来完成相应功能,具体代码如下:
st.sidebar.title('Toolbox')
with st.sidebar:
expander1 = st.expander('Expander1')
expander2 = st.expander('Expander2')
expander3 = st.expander('Expander3')
with expander1:
st.button('expander1-button1')
st.button('expander1-button2')
st.button('expander1-button3')
with expander2:
st.button('expander2-button1')
st.button('expander2-button2')
st.button('expander2-button3')
with expander3:
st.button('expander3-button1')
st.button('expander3-button2')
st.button('expander3-button3')
可以看到在左侧显示出了可折叠的
这个的工具栏显然没有达到预期,Button的宽度并没有完全占据容器,可能通过增加Button的属性来使其宽度占据整个容器的
st.sidebar.title('Toolbox')
with st.sidebar:
expander1 = st.expander('Expander1')
expander2 = st.expander('Expander2')
expander3 = st.expander('Expander3')
with expander1:
st.button('expander1-button1',use_container_width=True)
st.button('expander1-button2',use_container_width=True)
st.button('expander1-button3',use_container_width=True)
with expander2:
st.button('expander2-button1',use_container_width=True)
st.button('expander2-button2',use_container_width=True)
st.button('expander2-button3',use_container_width=True)
with expander3:
st.button('expander3-button1',use_container_width=True)
st.button('expander3-button2',use_container_width=True)
st.button('expander3-button3',use_container_width=True)