Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: qlostTV от Февраля 06, 2012, 08:22



Название: QTableView проблема с фокусом
Отправлено: qlostTV от Февраля 06, 2012, 08:22
Здравствуйте, столкнулся с проблемой, при клике на таблицу(если нет строк) то hasFocus=false, т.е. фокус =true, только тогда, когда клик по строке. Соответственно нужен фокус=true и с пустой таблицей.


Название: Re: QTableView проблема с фокусом
Отправлено: Bepec от Февраля 06, 2012, 09:08
А ты опиши, что хочешь сделать. А мы тебе поможем ^.^

PS а если всё таки хочешь только фокус, то перехватывай нажатие мыши и ставь фокус программно.


Название: Re: QTableView проблема с фокусом
Отправлено: qlostTV от Февраля 06, 2012, 09:17
А ты опиши, что хочешь сделать. А мы тебе поможем ^.^
тут и нужно, что при клике на таблицу ставить ей фокус. но фокус ставиться только когда по items кликаешь=)

Цитировать
PS а если всё таки хочешь только фокус, то перехватывай нажатие мыши и ставь фокус программно.

попробую, правда странно, думал готовый слот на такие нужды есть=)


Название: Re: QTableView проблема с фокусом
Отправлено: asvil от Февраля 06, 2012, 11:32
Добро пожаловать в Qt, где шаг в сторону и код превращается в кучу взаимосвязанной глючной лапшы.


Название: Re: QTableView проблема с фокусом
Отправлено: qlostTV от Февраля 06, 2012, 11:38
Добро пожаловать в Qt, где шаг в сторону и код превращается в кучу взаимосвязанной глючной лапшы.

если посмотреть обширно, довольно таки все изящно, а вот это абсурт, tableview это виджет, т.е. логично и для него делать, когда по таблице без итемов, то тоже фокус ему передавать


Название: Re: QTableView проблема с фокусом
Отправлено: alexman от Февраля 06, 2012, 11:42
А ты опиши, что хочешь сделать. А мы тебе поможем ^.^
тут и нужно, что при клике на таблицу ставить ей фокус. но фокус ставиться только когда по items кликаешь=)
Зачем?


Название: Re: QTableView проблема с фокусом
Отправлено: qlostTV от Февраля 06, 2012, 11:45
Зачем?

глупый вопрос. Ну как зачем, я кликаю по таблице, в ней строк нету и фокус не устанавливается, все дальше ничего делать не могу с таблицей.


Название: Re: QTableView проблема с фокусом
Отправлено: _OLEGator_ от Февраля 06, 2012, 11:52
У меня hasFocus() == true и с пустой таблицей.
Проблема видимо в чем то другом.
Минимальный проект с ошибкой в студию...

to Филоненко Михаил:
ничего подобного, все работает так, как вы спроектируете!


Название: Re: QTableView проблема с фокусом
Отправлено: Bepec от Февраля 06, 2012, 12:05
Без проекта, любая программа на любом языке, длиной более 7000 символов превращается в глючную кучу.

Зачем тебе фокус на пустой таблице, QLostTV?

ЧТО ТЫ ХОЧЕШЬ СДЕЛАТЬ?

(например - хочу при получении фокуса таблицей, вывести надпись - тут был фокус ©)


Название: Re: QTableView проблема с фокусом
Отправлено: qlostTV от Февраля 06, 2012, 12:06
У меня hasFocus() == true и с пустой таблицей.
Проблема видимо в чем то другом.
Минимальный проект с ошибкой в студию...
да действительно, нашел ошибку, очень глупая
Код:
   QString txt = QInputDialog::getText("","");
    if(ui->tableView->hasFocus()){
......................
}

ясное дело фокус у меня и терялся=)

как сразу не заметил этого. Видимо старею!!!!


Название: Re: QTableView проблема с фокусом
Отправлено: qlostTV от Февраля 06, 2012, 12:07
Без проекта, любая программа на любом языке, длиной более 7000 символов превращается в глючную кучу.

Зачем тебе фокус на пустой таблице, QLostTV?

ЧТО ТЫ ХОЧЕШЬ СДЕЛАТЬ?

(например - хочу при получении фокуса таблицей, вывести надпись - тут был фокус ©)

чтоб добавить строку, в эту таблицу=))))


Название: Re: QTableView проблема с фокусом
Отправлено: Bepec от Февраля 06, 2012, 12:10
Ну таки переопределяй keyPressEvent() и дублируй кнопками аля "Вставить строку".