crossplatform.ru

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

> QTextTable, Изменение рамки ячейки
Гость_Гость_Wlad_*_*
сообщение 12.11.2009, 8:21
Сообщение #1





Гости








    


В Qt 4.3 рамка таблицы отображалась тонкими чеными линиями. Тогда я просто смотрел возможности Qt. Сейчас решил использовать QTextTable, но оказалось, что в Qt 4.5.3 рамка отображается двойной серой линией. Все попытки отобразить границы ячейки таблицы с помощью ОДНОЙ черной не увенчались успехом. После всех эспериментов у меня возникли 2 вопроса:

1. Можно ли отображать границы ячейки одинарной линией ?
2. Можно ли границы одной ячейки отображать линиями разной толщины (как в Wordе) ?

Может кто разбирался с QTextTable ?

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
frg10
  опции профиля:
сообщение 12.11.2009, 13:04
Сообщение #2


Студент
*

Группа: Участник
Сообщений: 47
Регистрация: 8.11.2009
Из: Ростов-на-Дону
Пользователь №: 1213

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




Репутация:   2  


Может использовать CSS? Там для границ таблицы есть аттрибуты:
Цитата
border-color <color> Цвет границ для текстовых таблиц.
border-style none | dotted | dashed | dot-dash | dot-dot-dash | solid | double | groove | ridge | inset | outset Стиль границ для текстовых таблиц.

Раз
Два
Три
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Гость_Гость_*
сообщение 12.11.2009, 13:58
Сообщение #3





Гости








    


Цитата(frg10 @ 12.11.2009, 13:04) *
Может использовать CSS? Там для границ таблицы есть аттрибуты:
Цитата
border-color <color> Цвет границ для текстовых таблиц.
border-style none | dotted | dashed | dot-dash | dot-dot-dash | solid | double | groove | ridge | inset | outset Стиль границ для текстовых таблиц.

Раз
Два
Три


Это можно и без CSS :

   QTextTableFormat tableFormat;
  
   QBrush brush = tableFormat.borderBrush();
   brush.setColor(QColor(Qt::black));
   tableFormat.setBorderBrush(brush);    // Меняем цвет бордюра на черный

   QTextFrameFormat orderFrameFormat = cursor.currentFrame()->frameFormat();
   orderFrameFormat.setBorderStyle(QTextFrameFormat::BorderStyle_Solid);  // Меняем стиль бордюра


НО :
Бордюр ячейки состоит из двух рамок: внешней и внутренний (запустите демо программу из папки:
...\Qt_4_5\demos\textedit\release и увидите как выглидит таблица)
Внутренняя рамка всегда остается.

Спасибо.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


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




RSS Текстовая версия Сейчас: 22.12.2024, 8:11