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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: unifiedTitleAndToolBarOnMac: тулбар не подстраивается под размер кнопок  (Прочитано 2997 раз)
serkol
Гость
« : Ноябрь 27, 2010, 01:21 »

Это опять про Mac.

Моя программа: на главном окне выставлено свойство unifiedTitleAndToolBarOnMac. Есть тулбар с кнопками. На кнопках есть картинки и текст. Через меню можно выбрать, что показывать на кнопках тулбара. Варианты: картинки и текст, только картинки, только текст.

Баг: После изменения кнопок (например были картинки и текст, остался только текст), тулбар неправильно подстраивает свою высоту.

Если не использовать unifiedTitleAndToolBarOnMac, то все нормально, высота подстраивается правильно, но тогда программа не выглядит как родная на маке...

Дополнение:
Если изменить руками (мышкой) размер главного окна, все обновляется, тулбар становится правильной высоты. Как заставить главное окно обновиться из программы? Я посылал update() и тулбару, и главному окну - не помогает.

« Последнее редактирование: Ноябрь 27, 2010, 02:00 от serkol » Записан
serkol
Гость
« Ответ #1 : Ноябрь 27, 2010, 02:21 »

Методом тыка нашел обходной путь.

1. Сначала вызываешь    setUnifiedTitleAndToolBarOnMac(false);
2. Меняешь что нужно на кнопках.
3. Восстанавливаешь    setUnifiedTitleAndToolBarOnMac(true);

Недостаток: тулбар прячется на пол секунды.

Кто-нибудь знает лучшее решение?
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #2 : Ноябрь 27, 2010, 03:15 »

Да, не давать юзверю переключать. Где вы видели программы на маке с текстом на тулбаре?
Записан
serkol
Гость
« Ответ #3 : Ноябрь 27, 2010, 03:27 »

Видел. Я пользуюсь парой программ на маке где такие опции:


    v Icon and Text
      Icon Only
      Text Only
      --------
      Use Small Size


и мне это нравится. Моя программа тоже для регулярного использования, раза 2-4 в неделю. Через некоторое время хочешь иметь больше места для информации вместо рисунков на кнопках, или маленькие рисунки без текста.

PS.
Отправил этот пост и открыл Ворд чтобы отредактировать один документ, и увидел такой тулбар (см. картинку)

« Последнее редактирование: Ноябрь 27, 2010, 03:39 от serkol » Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #4 : Ноябрь 27, 2010, 03:50 »

Нашли что в пример приводить - мелкософтную поделку. Лучше бы Mail открыли - там есть переключалка.
Вообще в юзабилити гайде эппла написано - не давайте юзеру возможность настроить всё подряд, дайте только то, что имеет смысл. К примеру в мейле вот только сейчас узнал о возвожности переключения.
По теме - попробуйте методы update(), updateGeometry(), adjustSize() для тулбара/его парента.
Записан
serkol
Гость
« Ответ #5 : Ноябрь 27, 2010, 04:01 »

Код:
Нашли что в пример приводить - мелкософтную поделку. Лучше бы Mail открыли - там есть переключалка.

По статистике MS Word - одна из самых часто используемых программ на маке. Mail-ом я не пользуюсь - все на интернете. А вот кликнете правой кнопкой на тулбар Файндера :-)

update(), updateGeometry() я раньше пробовал - не помогают.

adjustSize() творит чудеса - в плохом смысле этого слова.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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