Russian Qt Forum

Qt => Общие вопросы => Тема начата: pacmanoid от Декабрь 01, 2006, 08:50



Название: QT-421 Троли изменили механизм сообщений мыши в QTableWidget
Отправлено: pacmanoid от Декабрь 01, 2006, 08:50
Раньше в QT-4.1.4 было так:
делал

...
QLabel * label = new QLabel;

QTableWidget * table = new  QTableWidget;

table->setCellWidget ( 2 , 2, label );
...

После этого во время работы приложения при клике мышкой на данный виджет вставленный в ячейку 2,2, ячейка таблици автоматически получала фокус, тоесть становилась выбранной. Теперь же после перевода приложения на QT-4.2.1 она также автоматом фокус не получает, а выбраной как была другая до этого так и осталась. Как можно сделать чтобы было как раньше. Может теперь какойто метод есть который включает данный режим.


Название: QT-421 Троли изменили механизм сообщений мыши в QTableWidget
Отправлено: QCasper от Декабрь 01, 2006, 15:25
меня все больше и больше начинает напрягать QTableWidget в 4.2.1, может быть они специально хотят, чтобы программеры постпенно переехали с него, дабы вообще потом отказаться? :)
Вопрос только куда переезжать...


Название: QT-421 Троли изменили механизм сообщений мыши в QTableWidget
Отправлено: Tonal от Февраль 14, 2007, 08:41
Кто-нибудь уже разобрался как это лечиться?


Название: QT-421 Троли изменили механизм сообщений мыши в QTableWidget
Отправлено: mcgeenerman от Февраль 18, 2007, 23:21
Цитировать
После этого во время работы приложения при клике мышкой на данный виджет вставленный в ячейку 2,2, ячейка таблици автоматически получала фокус, тоесть становилась выбранной. Теперь же после перевода приложения на QT-4.2.1 она также автоматом фокус не получает, а выбраной как была другая до этого так и осталась. Как можно сделать чтобы было как раньше. Может теперь какойто метод есть который включает данный режим.

получал фокус в смвсле для редактирования, если да и вопрос стоит как с одним кликом перейти на редактирования ячейки?
ну тут просто в  
Код:
void QTableWidget::itemClicked ( QTableWidgetItem * item )  [signal]
связываеш со слотом а вслоте вызываеш функцию
Код:
void QTableWidget::editItem ( QTableWidgetItem * item )
, если я правильно понял ворос...
просто я сразу начал с Qt 4.2.2