Название: Компактный QComboBox Отправлено: k1-801 от Ноябрь 09, 2016, 02:02 Добрый день. Перейду к сути.
Я бы хотел настроить QComboBox таким образом, чтобы в свёрнутом виде на нём отображался только значок выбранного варианта, но при разворачивании списка варианты должны отображаться полностью. В стандартном поведении QComboBox в свёрнутом виде отображается имя варианта (или вмещающаяся его часть), а при разворачивании списка собственно список имеет ту же ширину, что и виджет, и элементы при нехватке места обрезаются. Как это победить? Название: Re: Компактный QComboBox Отправлено: GreatSnake от Ноябрь 09, 2016, 11:53 ... при разворачивании списка собственно список имеет ту же ширину, что и виджет, и элементы при нехватке места обрезаются. Как это победить? Настройками не получится.Самый простой способ - переопределить Код и после вызова базового задавать требуемый размер. Цитировать Я бы хотел настроить QComboBox таким образом, чтобы в свёрнутом виде на нём отображался только значок выбранного варианта Для этого можно задействовать QToolButton, которому задать меню, в которое поместить QList/QTree(View|Widget).При изменении текущего элемента менять иконку в кнопке. Название: Re: Компактный QComboBox Отправлено: GraninDm от Ноябрь 11, 2016, 10:31 А может проще сделать кнопку с выпадающим меню?
Название: Re: Компактный QComboBox Отправлено: VPS от Ноябрь 11, 2016, 16:47 По мотивам этой (https://habrahabr.ru/post/215289/)статьи, "накидал" комбобокс, отображающий (в свёрнутом виде) только иконки, а в развёрнутом - иконки и текст:
Код Возможно, можно как-то проще. Название: Re: Компактный QComboBox Отправлено: k1-801 от Ноябрь 13, 2016, 00:24 Для этого можно задействовать QToolButton, которому задать меню, в которое поместить QList/QTree(View|Widget). Есть принципиальная разница между toolbutton и pushbutton-с-картинкой в данном случае? И как поместить в меню другой виджет так, чтобы в качестве выбранного элемента считался выбранный внутри виджета, а не QWidgetAction? Покопал документацию, не нашёл.При изменении текущего элемента менять иконку в кнопке. Также, в документации сказано, что на MacOS такой виджет не сможет получать сигналы от пользователя (фокус, мышь, клавиатура). |