Название: Вопрос по QGroupBox Отправлено: NickSin от Апрель 11, 2014, 15:38 Вопрос такой, как в QGroupBox отследить нажатие вложенных в него боксов, ратиокнопок? В доках только говориться о глобальном нажатии на всю группу.
Название: Re: Вопрос по QGroupBox Отправлено: kambala от Апрель 11, 2014, 18:52 кнопки через QButtonGroup
Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 13, 2014, 14:44 кнопки через QButtonGroup Каждую по отдельности чтоль? Ибо для каждой писать, получится много лишнего кода?А есть вообще какой-нибудь класс, где можно все кнопки, обьедененные в группу, просматривать на события глобально? Название: Re: Вопрос по QGroupBox Отправлено: kambala от Апрель 13, 2014, 18:18 buttonGroup->addButton(myButton); — не так и много кода для каждой кнопки.
если под «глобально» имеется в виду чтобы все клик-события кнопок шли через одну сущность, то QButtonGroup этим и занимается. Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 14, 2014, 12:10 buttonGroup->addButton(myButton); — не так и много кода для каждой кнопки. Про это понял, другого понять не могу, как его на лэйаут вместить - или такое пока невозможно? если под «глобально» имеется в виду чтобы все клик-события кнопок шли через одну сущность, то QButtonGroup этим и занимается. Название: Re: Вопрос по QGroupBox Отправлено: kambala от Апрель 14, 2014, 12:22 QButtonGroup — это не UI объект. радиокнопки свои помещаешь в групбокс, как и раньше.
Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 14, 2014, 13:22 QButtonGroup — это не UI объект. радиокнопки свои помещаешь в групбокс, как и раньше. Можно я поясню? тоесть создаю баттом бокс, в него пихаю кнопки, а потом баттом бокс пихаю в гроупбокс? Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 14, 2014, 13:33 QButtonGroup — это не UI объект. радиокнопки свои помещаешь в групбокс, как и раньше. Можно я поясню? тоесть создаю баттом бокс, в него пихаю кнопки, а потом баттом бокс пихаю в гроупбокс? ну или пример приведите, если можете, я вас не понимаю просто. Название: Re: Вопрос по QGroupBox Отправлено: Bepec от Апрель 14, 2014, 13:53 Готовых компонентов нет, ибо это предельно просто.
QGroupBox - виджет и служит для размещения на себе виджетов. Точка. QButtonGroup - объект(не визуальный) и позволяет объединять кнопки в группы. Т.е. addButton(ui.radio1, 0). У него есть сигналы нажатия на группу и всякие плюшки. QComboBox - виджет и как бы в группы не объединяется. Ибо незачем. Ещё проще - конкретизируйте задачу целиком, и мы вам подскажем как её проще решить. PS всю задачу, не "хочу получить нажатия", а "нужен интерфейс в котором при нажатии на виджет происходит то-то то-то". Название: Re: Вопрос по QGroupBox Отправлено: kambala от Апрель 14, 2014, 14:15 Код
Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 15, 2014, 09:05 Готовых компонентов нет, ибо это предельно просто. Задача такова:QGroupBox - виджет и служит для размещения на себе виджетов. Точка. QButtonGroup - объект(не визуальный) и позволяет объединять кнопки в группы. Т.е. addButton(ui.radio1, 0). У него есть сигналы нажатия на группу и всякие плюшки. QComboBox - виджет и как бы в группы не объединяется. Ибо незачем. Ещё проще - конкретизируйте задачу целиком, и мы вам подскажем как её проще решить. PS всю задачу, не "хочу получить нажатия", а "нужен интерфейс в котором при нажатии на виджет происходит то-то то-то". Есть список чекбоксов, которые отвечают за применение/не применение фильтра к обьекту. Их я собрал в группу при помощи QGroupBox Так вот я хочу отслеживать любое "применение/не применение" на чекбоксах, чтобы применять или не применять выбранные фильтры. Да я могу каждый раз отслеживать сигнал от каждой "кнопки" , но если у меня их 20-30 , то не хочется писать соединение сигнал-слот для каждой кнопки, хочется более гибкого решения! Название: Re: Вопрос по QGroupBox Отправлено: Bepec от Апрель 15, 2014, 09:23 Псевдокод:
Код: //*.h И всё. Теперь при нажатии на каждый из находящихся на ui.groupBox будет вызываться слот buttonClicked( QAbstractButton *) Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 15, 2014, 09:31 Код
Псевдокод: Код: //*.h И всё. Теперь при нажатии на каждый из находящихся на ui.groupBox будет вызываться слот buttonClicked( QAbstractButton *) Спасибо всем большое, единственное что я искал - это связь, не понимал как задействовать QButtonGroup. Еще раз спасибо Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 16, 2014, 10:19 Извиняюсь последний вопрос, а вот после добавления в группу, нельзя сделать чтобы чек ставился на множество кнопок?
Что за свойство за это отвечает? Просто я могу выбирать только одну кнопку, а мне нужно несколько Название: Re: Вопрос по QGroupBox Отправлено: OKTA от Апрель 16, 2014, 10:30 В каком смысле чек?
Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 16, 2014, 10:37 В каком смысле чек? Извиняюсь за неточность, в плане чекбокс, чтобы можно было выбрать разные чекбоксы.Сейчас ситуация такая, что если я поставлю галочку на один чекбокс, то при нажатии на второй с первого галка убирается. А мне нужно чтобы галки сохранялись, чтобы по ним уже организовывать фильтр в дальнейшем. Название: Re: Вопрос по QGroupBox Отправлено: NickSin от Апрель 16, 2014, 10:46 Все разобрался, спасибо!
|