Как управлять динамическим количеством выделенных полей выбора?Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Как управлять динамическим количеством выделенных полей выбора?

Сообщение Anonymous »

Я пытаюсь создать веб-приложение, которое позволит пользователю добавлять и удалять поля выбора по своему усмотрению.
У меня есть кнопка «Добавить», которая создает новый список, и я хотелось бы иметь рядом с каждым списком список кнопку удаления, позволяющую пользователю удалить этот список.
Я столкнулся с двумя проблемами:
  • Кнопка удаления и список не занимают одинаковое количество места, и поэтому причина, по которой они не совпадают друг с другом
    (позже это будет показано на скриншоте). Может быть, есть способ создать сетку из этих виджетов, чтобы решить эту проблему?
  • Когда я нажимаю кнопку удаления, я пытаюсь удалить как соответствующий список, так и саму кнопку удаления по их соответствующие клавиши, но ничего не происходит.
Вот код:

Код: Выделить всё

st.button("Add",on_click = callbacks.add_callback,help="Add a new test",  key="Add", args=(engine, tests_body_container,) )

def add_callback(engine, container):
with container:
col1, col2 = st.columns([1,1])
st.session_state.test_count += 1
for i in range(st.session_state.test_count):
with col1:
st.selectbox(f"Test {i + 1}:", ("a", "b", "c"), key = "Test_" + str(i + 1))
with col2:
st.button("Remove", on_click = remove_callback, help="Remove this test",key="Remove_"+ str(i+1), args=("Test_" + str(i+1),"Remove_"+ str(i+1)))

Код: Выделить всё

def remove_callback(key_of_test, key_of_remove_button):
del st.session_state[key_of_test]
del st.session_state[key_of_remove_button]
st.session_state.test_count -= 1
Вот смещение:
Изображение


Подробнее здесь: https://stackoverflow.com/questions/778 ... electboxes
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»