My design is as follows
1. A custom widget has been build bu placing a TextEdit on top of a QWidget
-Lets call this BasePriceLabel
2. Another custom eidget has been created by placing a QPushButton on top of
a QWidget
and the BasePriceLabel has been dragged and placed on top of the QPushButton
- Lets call this BasePriceButton (the button and the QtextEdit are of the
same size so the button just sits on top)
3. Now 2 BasePriceButton widgets have been dragged into another QWidget
- This forms the 3rd custom widget called BaseTradeWidget
I am trying to change the BasePriceButton so that the buttons looks
non-rectangular
This is the section of the code in my BasePriceButton class
public void paintEvent(QPaintEvent event) {
QPainter painter = new
QPainter(this.ui.buyButton.ui.basePriceLabel.ui.textEdit);
QPainterPath rounded_rect = new QPainterPath();
rounded_rect.addRoundRect(1, 1, width() - 2, rect().height() - 2,
25, 25);
painter.setClipPath(rounded_rect);
QRegion maskregion = painter.clipRegion();
setMask(maskregion);
}
This widget has got a button and I am trying to make the button
non-rectangular by masking it.
QT throws the warning
QPainter::begin: Paint device returned engine == 0, type: 1
QPainter::setClipPath: Painter not active
QPainter::clipRegion: Painter not active
I am under the impression that masking the TextEdit will also automatically
mask the Button that is under the QTextEdit
Can some one clarify how child widgets can be masked using QPainter
_______________________________________________
Qt-jambi-interest mailing list
[email protected]
http://lists.trolltech.com/mailman/listinfo/qt-jambi-interest