crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V  < 1 2 3 4 >  
Тема закрытаНачать новую тему
> [РЕШЕНО] QTableView::resizeColumnsToContents, неожидаемое поведение, подстраивается под заголовок
kwisp
  опции профиля:
сообщение 17.1.2009, 10:35
Сообщение #21


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата(Litkevich Yuriy @ 17.1.2009, 6:02) *
да так помогло:


:)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 17.1.2009, 11:07
Сообщение #22


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


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

вот в трэкере списочек, но я пока не понял, то что уменя это исправлено или нет.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 17.1.2009, 11:15
Сообщение #23


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


засада.
я так понял что у тебя в другом потоке заполняется таблица.
Цитата
Представление еще незаполнено, а метод resizeColumnsToContents уже вызван.


может следить за заполнением и по окончании последнего сигнал на который повесить уже этот resizeColumnsToContents() ???
особой надежды на трекер не оставляй многие задачи там могут висеть очень долго.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 17.1.2009, 11:20
Сообщение #24


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(kwisp @ 17.1.2009, 14:15) *
я так понял что у тебя в другом потоке заполняется таблица.
это все без моего участия, см. сообщение №13 reportmodel->setQuery(qstr, db); устанавливается запрос и далее модель сама его исполняет, получает из БД результат, ну а представление его отображает. Насчет асинхронности это лишь догадка. Но похоже асинхронности всетаки нет, т.к. если запрос тяжелый то GUI виснит.

Цитата(kwisp @ 17.1.2009, 14:15) *
может следить за заполнением и по окончании последнего сигнал на который повесить уже этот resizeColumnsToContents() ???
я не нашел способа узнать когда отображение завершится. Была дикая мысль использовать событие перерисовки. Но это крайность.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 17.1.2009, 13:10
Сообщение #25


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


в какой последовательности заполняется таблица???
если заполнение и отрисовка связаны жестко, то можно использовать

void QTableWidget::cellChanged ( int row, int column ) [signal] для последней ячейки это будет один из крайних моментов заполнения а следовательно после него можнол делать resizeColumnsToContents()

думаю стоит попробовать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 17.1.2009, 13:21
Сообщение #26


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(kwisp @ 17.1.2009, 16:10) *
в какой последовательности заполняется таблица???
не понял вопроса?

Цитата(kwisp @ 17.1.2009, 16:10) *
QTableWidget
я непользуюсь виджетом, у меня представление и модель
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 17.1.2009, 13:23
Сообщение #27


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата(Litkevich Yuriy @ 17.1.2009, 13:20) *
Цитата(kwisp @ 17.1.2009, 16:10) *
в какой последовательности заполняется таблица???
не понял вопроса?


ну ты знаешь какая ячейка заполниться последней??? сигнал void QTableWidget::cellChanged ( int row, int column ) [signal] передает номер строки и столбца в которой меняются значения.
если повесить слот resizeColumnsToContents() на сигнал о заполнении этой ячейки???

можно быстренько проверить сработает или нет просто соединив этот сигнал со слотом resizeColumnsToContents() нагрузит конечно процессор но зато узнаем....

Сообщение отредактировал kwisp - 17.1.2009, 13:25
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 17.1.2009, 13:33
Сообщение #28


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(kwisp @ 17.1.2009, 16:23) *
ну ты знаешь какая ячейка заполниться последней???
нет, я незнаю зарание сколько строк вернет БД
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 17.1.2009, 13:40
Сообщение #29


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата(Litkevich Yuriy @ 17.1.2009, 13:33) *
Цитата(kwisp @ 17.1.2009, 16:23) *
ну ты знаешь какая ячейка заполниться последней???
нет, я незнаю зарание сколько строк вернет БД


а кол-во столбцов знаешь?
а ячейка вообще какая нибудь может остаться не тронутой, т.е не заполняться???
заполнение даже пустой строкой считается что ячейка заполнена

если заполняются все ячейки гарантированно и ты знаешь колличество столбцов то можно вызывать resizeColumnsToContents() только когда редактируются ячейки последнего столбца по сигналу
QTableWidget::cellChanged ( int row, int column )

а так больше идей как то не находится....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 17.1.2009, 13:50
Сообщение #30


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(kwisp @ 17.1.2009, 16:40) *
ячейки последнего столбца по сигналу
QTableWidget::cellChanged ( int row, int column )


Цитата(Litkevich Yuriy @ 17.1.2009, 16:21) *
Цитата(kwisp @ 17.1.2009, 16:10) *
QTableWidget
я непользуюсь виджетом, у меня представление и модель
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

4 страниц V  < 1 2 3 4 >
Тема закрытаНачать новую тему
Теги
Нет тегов для показа


9 чел. читают эту тему (гостей: 9, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 30.11.2024, 6:25