Qt boundingRect不会返回足够大的矩形

时间:2017-04-10 14:20:26

标签: c++ qt

我试图确定为什么boundingRect没有返回一个足够大的矩形来包含字符串,有时它确实如此,但有时它不会,这是一个例子:

如果我提供的QStringList包含:

$request->getContent();

以下是要复制的文件clsErrorMsg.h:

ERRORS PARSING:
  "DYNAMIC.XML"
MISSING ATTRIBUTE:
  "VALUE"
FROM NODE:
  "RETENTIVE"
WITH ID:
  "INPCONFIRMNEWPASSWORD"

和clsErrorMsg.cpp:

class clsErrorMsg : public QWidget {
Q_OBJECT

public:
    explicit clsErrorMsg(QWidget* pobjParent, QStringList slstText
                        ,bool blnAtBottom = false
                        ,quint8 uint8Seconds = ERROR_DISPLAY_TIMEOUT
                        ,quint8 uint8FntSize = ERROR_DISPLAY_FONTSIZE);
    ~clsErrorMsg();
    void display();

signals:
    void timeout();

public slots:
    void oneSecUpdate();

protected:
    void paintEvent(QPaintEvent* pEvent) Q_DECL_OVERRIDE;
    void setBackgroundColor(QColor clrBG) { mclrBG = clrBG; }
    void setForegroundColor(QColor clrFG) { mclrFG = clrFG; }

private:
    bool mblnAtBottom;
    QColor mclrBG, mclrFG;
    quint8 muint8Delay, muint8FntSize;
    qint64 mint64TimeRef;
    QTimer* mpobjTimer;
    QStringList mslstText;
    char mszSeconds[COUNTDOWN_TIMER_BUFFER];
};

以上结果显示在显示屏中央的一个填充矩形,几乎足够大(即使空间允许2个额外的' X' s),但它仍然按宽度4个字符排序......为什么?

0 个答案:

没有答案