Russian Qt Forum
Ноябрь 25, 2024, 12:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QListWidget и минимальный размер  (Прочитано 6445 раз)
troorl
Гость
« : Июнь 16, 2007, 22:49 »

Мне нужно сделать нечто вроде диалога настроек, где слева в QListWidget сверху вниз располагаются значки с подписями в соответствии с разделами. Мне нужно, чтобы этот список всегда принимал минимальную ширину, так, чтобы в нём помещались все значки и в то же время, чтобы не было пустого места. Как этого можно добиться?
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #1 : Июнь 16, 2007, 23:02 »

установить политику размера fixed
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
troorl
Гость
« Ответ #2 : Июнь 16, 2007, 23:32 »

Цитата: "Racheengel"
установить политику размера fixed

Установил, но размер по ширине всё-равно в два раза больше, чем надо. Может оно предполагает, что колонок две штуки? Как установить явно, что колонка должна быть одна? В Assistant не нашёл
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #3 : Июнь 17, 2007, 08:56 »

Ширина итемов будет постоянная? если да, то просто подбери нужный размер и установи minimumSize и maximumSize для виджета одинаковыми и политику fixed. Должно работать.
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
troorl
Гость
« Ответ #4 : Июнь 17, 2007, 14:38 »

Цитата: "Racheengel"
Ширина итемов будет постоянная? если да, то просто подбери нужный размер и установи minimumSize и maximumSize для виджета одинаковыми и политику fixed. Должно работать.

Ширина итемов зависит от выбранного языка приложения и от шрифта, используемого в системе. Я не могу подобрать так, чтобы при любых условиях оно выглядело нормально.
Есть ещё идеи?
Записан
J. Bond
Гость
« Ответ #5 : Июнь 18, 2007, 08:36 »

Если можешь, то используй QTreeWidget  или QTableWidget у них есть замечательная функция resizeColumnToContent()
Записан
vregess
Гость
« Ответ #6 : Июнь 18, 2007, 10:54 »

Цитата: "troorl"
Мне нужно сделать нечто вроде диалога настроек, где слева в QListWidget сверху вниз располагаются значки с подписями в соответствии с разделами. Мне нужно, чтобы этот список всегда принимал минимальную ширину, так, чтобы в нём помещались все значки и в то же время, чтобы не было пустого места. Как этого можно добиться?


setFixedWidth(int);
Записан
troorl
Гость
« Ответ #7 : Июнь 18, 2007, 16:12 »

Цитата: "J. Bond"
Если можешь, то используй QTreeWidget  или QTableWidget у них есть замечательная функция resizeColumnToContent()

Мне не очень подходят эти виджеты Грустный
Цитировать
setFixedWidth(int)

А если внимательно прочитать тему?

Я вот тут подумал, может вручную его ресайзить? Только как узнать размера каждого QListWidgetItem?

добавлено спустя 1 час 57 минут:

 Отца русской демократии спас метод visualItemRect. Какой бы элемент из списка не взял - возвращается значение самого крупного итема. Дальше плюсуем spacing и получаем необходимую ширину. Улыбающийся
Записан
Sokoloff
Гость
« Ответ #8 : Ноябрь 08, 2009, 20:20 »

Продолжение разговора и пример кода в http://www.prog.org.ru/topic_11214_0.html
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.105 секунд. Запросов: 22.