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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: QLinearGradient не работает на QPainter::drawLine()?  (Прочитано 3941 раз)
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« : Январь 29, 2018, 16:25 »

Надо закрасить прямую вертикальную линию градиентом.

Код:
        QLinearGradient lg = QLinearGradient();
        lg.setCoordinateMode(QGradient::ObjectBoundingMode );
        lg.setStart(0,0);
        lg.setFinalStop(0,1);
        lg.setColorAt(0.0,QColor(255,255,255));
        lg.setColorAt(0.7,QColor(255,255,000));
        lg.setColorAt(1.0,QColor(255,127,000));
        p.setPen( QPen(QBrush( lg ), 1) );

Закрашивает всю линию последним цветом. Встречаются сообщения, что в 4-й версии была ошибка с градиентом на вертикальных и горизонтальных линиях, но она выглядела иначе - закрашивалось серым. И QTBUG про 5-ю версию я не нашёл.

Я что-то делаю не так, или дырка всё ещё сохранилась?

PS: Чёрт... вот он баг. Никуда не делся. Аж до последней версии дотащили, бездельники.  Злой
« Последнее редактирование: Январь 29, 2018, 16:33 от Гурман » Записан

2^7-1 == 127, задумайтесь...
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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