C
15 травня 2021 р. 23:41

Проблема с кнопкой закрытия вертикальных вкладок

C++, Qt

Здравствуйте!

У меня возник вопрос с вертикальными вкладками в Qt. Вот пример:

Дело в том что иконка закрытия перекрывает текст вкладки. Может вы знаете как задать значение X к этой кнопки? Так как в тестовом проекте много кода, я загрузил его в архив.
Мой код: TabExample.zip TabExample.zip
Спасибо.

2

Вам це подобається? Поділіться в соціальних мережах!

3
Михаиллл
  • 16 травня 2021 р. 00:52

Может быть кнопками заменить табы? У кнопок нормально иконки задаются. И если это таб виджет, то можно его заменить на стэк виджет. Но это конечно костыли.

    C
    • 16 травня 2021 р. 01:57

    Mihailll

    Здравствуйте!
    Спасибо за совет. Но в даном случаем мне нужно QTabWidget как горизонтально так и вертикально.

      C
      • 12 червня 2021 р. 16:20
      • Відповідь була позначена як рішення.

      Привет!

      Я исправил проблему с положением кнопки закрытия вертикальной вкладки.

      Код:

      1. if (tabPos != AppTabPosition::Top && tabPos != AppTabPosition::Bottom) {
      2. s.transpose();
      3.  
      4. if (this->tabsClosable()) { // check if tab is closable
      5. QRect optRect = opt.rect;
      6. optRect.setX(90); // set X pos of close button
      7. optRect.setY(optRect.y() + 8); // calcs the Y pos of close button
      8. optRect.setSize(QSize(12, 12));
      9. this->tabButton(i, QTabBar::RightSide)->setGeometry(optRect);
      10. }
      11. }

      Здесь я не изменяю значение по умолчанию opt.rect, а вместо этого копирую его в новый QRect. Затем я меняю размер и положение optRect и, наконец, устанавливаю его в tabButtton.

      Скриншот:

      Проблема решена.

        Коментарі

        Only authorized users can post comments.
        Please, Log in or Sign up
        • Останні коментарі
        • Evgenii Legotckoi
          16 квітня 2025 р. 17:08
          Благодарю за отзыв. И вам желаю всяческих успехов!
        • IscanderChe
          12 квітня 2025 р. 17:12
          Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
        • AK
          01 квітня 2025 р. 11:41
          Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
        • Evgenii Legotckoi
          09 березня 2025 р. 21:02
          К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
        • VP
          09 березня 2025 р. 16:14
          Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…