Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: xintrea от Март 03, 2011, 19:41



Название: Как запретить появление рамки вокруг QLabel, содержащей Url, при клике на нее?
Отправлено: xintrea от Март 03, 2011, 19:41
Здравствуйте!


Есть QLabel, которая содержит Url. На экране она автоматически выглядит как строка синего текста с подчеркиванием. При клике на эту QLabel у меня вызывается некое действие.

Проблема в том, что вокруг QLabel при клике появляется некрасивая пунктирная рамка. И я никак не пойму как ее убрать. Выглядит эта рамка вот так ("рамкой" выделен hello word):

(http://rghost.ru/4613365/image.png)

Вопрос: как можно настроить вижет QLabel чтобы этой рамки не появлялось?


Название: Re: Как запретить появление рамки вокруг QLabel, содержащей Url, при клике на нее?
Отправлено: Kolobok от Март 03, 2011, 20:09
Похоже на фокус. Попробуй setFocusPolicy(...) или setTextInteractionFlags(...)


Название: Re: Как запретить появление рамки вокруг QLabel, содержащей Url, при клике на нее?
Отправлено: xintrea от Март 03, 2011, 20:23
Похоже на фокус. Попробуй setFocusPolicy(...) или setTextInteractionFlags(...)

Угу, поставил setFocusPolicy(Qt::NoFocus) - рамка не появляется. Но теперь невозможно через Tab выделять...

Хотелось бы заменить появление рамки на background-подсветку области такста. Как это можно сделать?


Название: Re: Как запретить появление рамки вокруг QLabel, содержащей Url, при клике на нее?
Отправлено: Etud от Март 04, 2011, 09:52
Палка о двух концах.

У меня похожая бодяга...


Название: Re: Как запретить появление рамки вокруг QLabel, содержащей Url, при клике на нее?
Отправлено: GreatSnake от Март 04, 2011, 10:32
См. CSS.