Форум сайта python.su
Доброго времени суток!
Искал по форуму, но что-то не нашел.
Есть форма с, более чем, сотней чекбоксов. Каждому чекбоксу соответствует какая-либо опция. По этим опциям будут сформированы запросы к БД.
Вопрос: как сделать цикл по всем чекбоксам с целью проверки зачеканы они или нет?
Офлайн
Простите, но форма с “больше чем сотней чекбоксов” - это уже чушь.
Как пользователю это заполнять. Какая после этого получится ментальная модель???
Лучшим вариантом будет два листбокса. В одном - варианты на выбор. В другом - варианты, которые выбраны. (Аналог: слева - все чекбоксы, справа - чекбоксы с положительным выбором).
Если этот вариант не подходит - пишите. Предложу вариант с чекбоксами :)
Офлайн
За чушь спасибо. Я знал, но это простейшее из того что я смогу сделать для людей, которые с ПК “на Вы”. Не могли бы показать код для листбокса? Что-то в Дизайнере я не нашел такого виджета.
Отредактировано lotro (Март 10, 2013 17:01:17)
Офлайн
В каком Дизайнере? Я думал Вы пишете на Tkinter.
Используйте прямые методы построения интерфейса. В этом случае Вы будете лишены множества проблем, связанных с разрешением экрана, отображение виджетов и кроссплатформенностью. Могу показать как это делается в Tkinter…
Отредактировано 4kpt (Март 10, 2013 17:06:48)
Офлайн
Оу. Извиняюсь. Я пишу c помощью PyQt 4.7
Лично для меня отдельный кайф вызывает рисование в Дизайнере.
Отредактировано lotro (Март 10, 2013 17:09:16)
Офлайн
lotro
Тогда я приношу свои извинения. Я с PyQt не дружу :)
Надумаете использовать Tkinter - пишите…
Офлайн
На сколько я знаю в 3 версии Qt еще использовался класс QListBox, но потом от него отказались в пользу QListView. Возможно, это не совсем одно и тоже, что и в listbox в Tkinter.
Документация
Отредактировано SorrowFuck (Март 10, 2013 17:26:58)
Офлайн
Если используете QListWidget
from PyQt4 import QtGui, QtCore def show_all_items_check_state(): for i in range(listwidget.count()): item = listwidget.item(i) print item.checkState() == QtCore.Qt.Checked
Офлайн
4kpt, помогайте. Мой вариант
self.checkBox_9 : "lyamblii"
Отредактировано lotro (Март 10, 2013 19:45:01)
Офлайн
Забыл, что Вы просили. Завтра напишу два примера :)
Офлайн