Order of widget different than coding order

let’s say I have widget A which depends of widget B but I want to show A before B.

A = widget()
B = widget(A)

However, I want to show B before A.
How can I separate coding order from display order?

The order in which components are displayed is the same as the call order in the code. There are two components that enable placing components out of sequential call order, st.container and st.empty. In this case st.empty could help. The components are shown in the order they are called but we place B with the placeholder component so it displays above A.

placeholder = st.empty()
A = st.widget()
B = placeholder.widget(A)
1 Like