Как узнать, отображается ли горизонтальная полоса прокрутки в унаследованном классе QPlainTextEdit? - PullRequest
0 голосов
/ 12 июня 2011

Как я могу узнать, отображается ли полоса прокрутки в QPlainTextEdit? Я пробовал QScrollBar :: isHidden (), но всегда возвращаю true.

Ценю любую вашу помощь!

1 Ответ

2 голосов
/ 12 июня 2011

Вы должны попробовать использовать метод isVisible() для ваших правок verticalScrollBar().

Это работает, как и ожидалось здесь:

#include <QtGui>

class Win: public QWidget
{
    Q_OBJECT

    public:
        Win(QWidget *parent=0): QWidget(parent)
        {
            edit = new QPlainTextEdit;
            QPushButton *b1 = new QPushButton("click");
            QVBoxLayout *vl = new QVBoxLayout;
            vl->addWidget(edit);
            vl->addWidget(b1);
            setLayout(vl);
            connect(b1, SIGNAL(clicked()), this, SLOT(clicked()));
        }

    public slots:
        void clicked()
        {
            qDebug() << edit->verticalScrollBar()->isVisible();
        }

    private:
        QPlainTextEdit *edit;
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...