Is it not possible to change the font twice during a paintEvent()? The following minimal example causes an infinite loop of paintEvent()s, if the font is changed twice. If I comment any of the setFont() lines out, it works fine.
{
Q_OBJECT
public:
~FontRepaint(){};
protected:
};
FontRepaint
::FontRepaint(QWidget *parent
){
}
{
qDebug() << "repaint";
setFont
(QFont("Helvetica",
18));
setFont
(QFont("Helvetica",
14));
}
class FontRepaint : public QWidget
{
Q_OBJECT
public:
FontRepaint(QWidget *parent = 0);
~FontRepaint(){};
protected:
void paintEvent(QPaintEvent*);
};
FontRepaint::FontRepaint(QWidget *parent)
: QWidget(parent)
{
}
void FontRepaint::paintEvent(QPaintEvent*)
{
qDebug() << "repaint";
setFont(QFont("Helvetica", 18));
setFont(QFont("Helvetica", 14));
}
To copy to clipboard, switch view to plain text mode
Bookmarks