Russian Qt Forum
Ноябрь 24, 2024, 03:54 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Подстрочный текст, как нарисовать такое?  (Прочитано 4133 раз)
Stek
Гость
« : Август 28, 2012, 13:28 »

Здравствуйте!
 
Необходимо отобразить подстрочный символ в item treewidget.
Как такое реализовать?
Записан
Kurles
Бывалый
*****
Offline Offline

Сообщений: 480



Просмотр профиля
« Ответ #1 : Август 28, 2012, 13:36 »

Рисовать его на иконке. Стандартных средств нету вроде.
Записан

Код
C++ (Qt)
while(!asleep()) sheep++;
mutineer
Гость
« Ответ #2 : Август 28, 2012, 13:39 »

Сделать свой делегат и рисовать в нем
Записан
Stek
Гость
« Ответ #3 : Август 30, 2012, 09:44 »

Получилось нарисовать так:

Код:
  QPixmap pm(QSize(100,100));
  QPainter painter(&pm);

  //Закрашиваю область рисования
  painter.fillRect(painter.viewport(),QColor(255,255,255));

  //Рисую текст
  painter.setFont(QFont("Arial",46,QFont::Normal));
  painter.drawText(50, 20,50,100, Qt::AlignCenter | Qt::AlignTop,QString::number(levelcount));

  //Отображаем результат отрисовки
  parentitem->setIcon(0,pm);//root item в treewidget

  Но изначально нужно отображать ещё и icon слева, напротив item, а уже поверх рисовать циферки (т.е как на рисунке в 1-ом посте).

  Как сделать чтобы рисуемый текст отображался на прозрачном фоне, смотрел

Код:
  painter.setCompositionMode(QPainter::CompositionMode_Source);
  painter.fillRect(rect, Qt::transparent);

  но не дал ладу. Буду признателен за помощь, спасибо!
Записан
Stek
Гость
« Ответ #4 : Август 31, 2012, 08:01 »

так...с прозрачностью понятно,забыл закомментить строчку

Код:
//painter.fillRect(painter.viewport(),QColor(255,255,255));


Как бы теперь поверх основной Icon нарисовать цифру?
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.079 секунд. Запросов: 23.