Название: полоса вокруг QGraphicsProxyWidget Отправлено: r04 от Февраль 19, 2013, 08:55 Здравствуйте. На графическую сцену кидаю виджеты.
Код: class GroundScene: public QGraphicsScene { Если помеченная строка раскомментирована - вокруг виджета белая рамка. Если закомментирована - черная. Скриншоты прикрепил. При измении размеров окна (сцены) нижняя горизонтальная полоса то пропадает , то появляется, я виню округление (правая полоса тоже появляется, на скриншотах не показано). Верхняя и левая полосы никуда не пропадают. Подскажите как убрать полосы? Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: carrygun от Февраль 19, 2013, 13:16 Может попробовать убрать фрейм у виджета?
Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: r04 от Февраль 19, 2013, 13:56 было бы хорошо, но как убрать фрэйм у проксивиджета?
setStyleSheet там не определен как и setFrameStyle Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: Bepec от Февраль 19, 2013, 14:00 Я думаю надо его убрать в виджете :) Прокси на то и прокси, что берёт данные из виджета, а не от себя придумывает.
Хотя могу и ошибаться :) Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: r04 от Февраль 19, 2013, 14:13 widget->setStyleSheet("QLabel { border:0px solid red; }");
не помогло, но выставив рамку в не 0px я заметил что моя новая рамка оказывается внутри этой негодной старой. Всем спасибо, проблему решил каким то срашным костылем: чтобы нормально выводились картинки с прозрачным фоном я писал что-то типа: Код: painter.setBrush (QBrush (QColor (0, 0, 0, 0))); ЗЫ. Если знаете как правильнее - подскажите пожалсто. заменил на: painter.drawRect (-1, -1, width() + 2, height() + 2); и рамка пропала. Но товарищи, этож все равно ужасно.. Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: _OLEGator_ от Февраль 19, 2013, 14:16 Вообще похоже, что неправильно определяется прямоугольная область объекта. Если ты ничего такого не переопределяешь, связанного с отрисовкой и определением области отрисовки, то тогда да, очень странный косяк.
Также это может зависеть от ViewportUpdateMode у вьювера, какое кстати там значение выставлено? Лучше бы конечно минимальный проект с ошибкой прикрепил... Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: r04 от Февраль 19, 2013, 14:25 ничего не переопределял, значения тоже по умолчанию:
QGraphicsView::MinimalViewportUpdate минимальный проект, мб однажды прикреплю, если еще с ошибками на эту тему столкнусь Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: Bepec от Февраль 19, 2013, 14:30 Цитировать painter.setBrush (QBrush (QColor (0, 0, 0, 0))); painter.drawRect (0, 0, width(), height()); ППЦ. ты сам же её рисуешь? Что тебя не устраивает? А при рисовании за границей (-1 и прочая), рамка наверняка тупо обрезается кропом. Что тебя не устраивает? Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: r04 от Февраль 19, 2013, 14:32 неустраивает что рамку убрать "по-человечески" не получилось. А так, сойдет )
Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: Bepec от Февраль 19, 2013, 14:34 Так не рисуй rect.
ТЫ её рисовал. Убери нафиг строку drawRect и будет тебе счастье! Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: r04 от Февраль 19, 2013, 14:38 огромное спасибо )
Название: Re: полоса вокруг QGraphicsProxyWidget Отправлено: Bepec от Февраль 19, 2013, 14:40 Фух. Пожалуйста.
|