Название: Как узнать влазит ли текст в ячейку QTableView Отправлено: kkk777kkk от Сентября 10, 2009, 11:35 Есть таблица на vableview, к ячейкам одного из столбцов которой, появилась необходимость добавить Qt::ToolTipRole, но не хотелось бы добавлять tooltip зря, если текст в ячейке и так виден. Как узнать, что текста больше чем может вместить в себя ячейка? ???
зы: ячейка из трех строк и разная длина слов не дает воспользоваться суммой буков и пробелов потому как не ясно как будет перенес текст. :P спасибо откликнувшимся :) Название: Re: Как узнать влазит ли текст в ячейку QTableView Отправлено: GreenGo от Сентября 10, 2009, 15:19 Есть таблица на vableview, к ячейкам одного из столбцов которой, появилась необходимость добавить Qt::ToolTipRole, но не хотелось бы добавлять tooltip зря, если текст в ячейке и так виден. Как узнать, что текста больше чем может вместить в себя ячейка? ??? есть такой класс QFontMetrics, у которого есть ф-ция возвращающая длину определенного текста, с определенным шрифтом в пикселях.зы: ячейка из трех строк и разная длина слов не дает воспользоваться суммой буков и пробелов потому как не ясно как будет перенес текст. :P спасибо откликнувшимся :) В ф-ции отрисовки QTableView, сравнивай длину ячейки с длинной текста и если не вмещается, указывай tooltip. Название: Re: Как узнать влазит ли текст в ячейку QTableView Отправлено: kkk777kkk от Сентября 10, 2009, 22:37 пасиб за решение интересное, правда я вот, после того как написал пост, сел и решил полезть в исходники tableview и там нашел метод resizeColumnToContents(int) а в нем все было очень просто: ширина колонки - это ширина хедера этой колонки, а sizeHintForColumn дает ширину максимальной ячейки, при этом есть наследованый метод sizeHintForIndex, который и дал мне искомую ширину текста!
Название: Re: Как узнать влазит ли текст в ячейку QTableView Отправлено: Evgeniya от Декабря 18, 2009, 16:25 kkk777kkk, а не подскажите как вы реализовали эту проверку???
Просто я делаю так: Добавила в модель обработку роли Qt::ToolTipRole и теперь подсказка выскакивает под каждой ячейкой...и как же внутри модели можно теперь проверить,поместится ли текст в ячейку.Ведь методы которые Вы написали относятся уже не к модели,а к представлению.. Подскажите пожалуйста,оччень надо!!!!! Название: Re: Как узнать влазит ли текст в ячейку QTableView Отправлено: lit-uriy от Декабря 18, 2009, 17:38 А в модели это и незачем проверять (она не зависит от представления).
Да и подсказку выводит не модель, а представление, в нём и надо решать показывать её или нет Название: Re: Как узнать влазит ли текст в ячейку QTableView Отправлено: Evgeniya от Декабря 18, 2009, 17:44 Вот и я думаю,что это в представлении нужно проверять...только как при этом выводить toolTip наведенной ячейки..чего-то я не найду такого метода в представлении
Название: Re: Как узнать влазит ли текст в ячейку QTableView Отправлено: Kolobok от Декабря 19, 2009, 00:40 View сама почти ничего не рисует. Это все в делегате
Код: QAbstractItemDelegate::helpEvent |