Russian Qt Forum
Ноябрь 26, 2024, 01:47
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Пользовательский интерфейс (GUI)
>
QTableView и авто resizeColumnsToContents
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: QTableView и авто resizeColumnsToContents (Прочитано 16482 раз)
studentenok
Гость
QTableView и авто resizeColumnsToContents
«
:
Декабрь 04, 2007, 17:42 »
может не досмотрел в асистанте
при окончании редактирования ячейки в QTableView нужно изменить размер столбца под содержимое ячейки
(под максимальное по длине симолов содержимое в видимых ячейках)
сделал setEditStrategy(QSqlTableModel::OnFieldChange)
и повесил на connect( &model,SIGNAL( beforeUpdate(int, QSqlRecord &)), this, SLOT( resizeColumn() ));
в resizeColumn() типа QTableView.resizeColumnsToContents()
но QTableView как-то странно ведёт себя, после нажатия Enter (типа окончание редактирования ячейки) фокус
не понятно куда "улетает" (на первую верхнюю ячейку QTableView) ((
Записан
ритт
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #1 :
Декабрь 04, 2007, 18:51 »
/* резко захотелось админку */
ты сам понял что сделал? ты очень многого не досмотрел в ассистанте!
Цитировать
void QSqlTableModel::setEditStrategy ( EditStrategy strategy ) [virtual]
Sets the strategy for editing values in the database to strategy.
This will revert any pending changes.
See also editStrategy() and revertAll().
Цитировать
QSqlTableModel::OnFieldChange - All changes to the model will be applied immediately to the database.
Цитировать
void QTableView::resizeColumnsToContents () [slot]
Resizes all columns based on the size hints of the delegate used to render each item in the columns.
найди какой-нибудь гуи к любой бд, выполни в нём селект, чтобы в табличку выбрались строки, затем измени какую-нибудь ячейку, затем растяни хидер по контенту и тут же снова сделай селект...
куда делся фокус? непонятно куда?
продолжай читать ассистант...
на лоре в прошлом месяце проскакивала новость о том, что кто-то где-то намылился переводить кутэшные доки на русский - поищи линк и читай на русском, раз с аглицким _такие_ проблемы!
Записан
studentenok
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #2 :
Декабрь 04, 2007, 20:41 »
спасибо за разъяснение, понемногу доходит
я похоже не к тому прикрутил
идея такая, что после нажатия Enter/Tab или перевода фокуса мышкой/клавишами
столбец автоматически изменял свой размер под содержимое ячеек.
пока получается, что если в поле внесли содержимое по размеру больше, чем размер столбца,
то обрезает по размеру столбца, что очень не удобно.
кто-нибудь с этим работал?
p/s я "учил" французский
Записан
ритт
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #3 :
Декабрь 04, 2007, 21:21 »
ну, звыняй тогда...день тяжелый
ага...пятку с ухом сконнектил
у селекшМодели лови сигнал куррентЧенджет(нью, олд) /* если не путаю */ и для олд.колумен() делай ресайзТуКонтент
<snip>
мне такой подход кажется несколько неуместным (в глазах юзверя) - юзверь выставил столбцы, как ему нравится, а оно потом всё прыгает...
поищи всё-таки линк на руссифицированные доки...должно быть потешно
Записан
SerjVarshavskiy
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #4 :
Декабрь 04, 2007, 21:33 »
попробуй
connect( tableView->selectionModel(), SIGNAL( selectionChanged(const QItemSelection &, const QItemSelection &)), this, SLOT( resizeColumn() ));
Записан
ритт
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #5 :
Декабрь 04, 2007, 21:44 »
ага...название сигнала, значит, не угадал...
серж, и что получится? боюсь, ресайзКолумн без нумера колумна не сработает...в код лезть лениво
Записан
SerjVarshavskiy
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #6 :
Декабрь 04, 2007, 22:00 »
студентенок указывал: "в resizeColumn() типа QTableView.resizeColumnsToContents()"
наверно это самописный слот в котором вызывается resizeColumnsToContents()
т.е. номер не нужен
Записан
ритт
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #7 :
Декабрь 04, 2007, 22:07 »
а...быть может
теперь я боюсь, что QTableView.resizeColumnsToContents() не сработает...шибко сказочный код
Записан
Dodge
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #8 :
Декабрь 05, 2007, 14:41 »
человеки, resizeColumnsToContents с багом, баг давно отрепорчен, ждем фикса.
Записан
pastor
Administrator
Джедай : наставник для всех
Offline
Сообщений: 2901
Re: QTableView и авто resizeColumnsToContents
«
Ответ #9 :
Декабрь 05, 2007, 14:59 »
Цитата: Dodge от Декабрь 05, 2007, 14:41
человеки, resizeColumnsToContents с багом, баг давно отрепорчен, ждем фикса.
А какой его айди на Task Tracker?
Записан
Integrated Computer Solutions, Inc. (ICS)
http://www.ics.com/
Dodge
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #10 :
Декабрь 05, 2007, 15:02 »
Цитата: pastor от Декабрь 05, 2007, 14:59
А какой его айди на Task Tracker?
Завтра скажу, мессадж с айди у сотрудника дома
Записан
studentenok
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #11 :
Декабрь 05, 2007, 21:40 »
вроде работает, ничего не замечаю, но таблички маленькие
Записан
ритт
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #12 :
Декабрь 05, 2007, 23:00 »
русская локализация доков по кутям
http://www.crossplatform.ru/documentation/qtdoc4.3/
ещё у меня есть частично допереведённый qt_ru.ts - могу выложить, если кому надо
Записан
Dodge
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #13 :
Декабрь 06, 2007, 13:59 »
Цитата: pastor от Декабрь 05, 2007, 14:59
А какой его айди на Task Tracker?
Либо 181218 либо 181351
Записан
ритт
Гость
Re: QTableView и авто resizeColumnsToContents
«
Ответ #14 :
Декабрь 06, 2007, 14:13 »
нет таких айдишничков
как себя бага хоть проявляла? /* так...праздное любопытство */
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...