【问题标题】:How to know if a horizontal scrollerbar is shown in a QPlainTextEdit inherited class?如何知道 QPlainTextEdit 继承类中是否显示水平滚动条?
【发布时间】:2011-06-12 09:43:26
【问题描述】:

我怎么知道滚动条是否显示在 QPlainTextEdit 中? 我试过 QScrollBar::isHidden() ,但总是返回 true。

感谢您的帮助!

【问题讨论】:

    标签: c++ windows linux qt qt4


    【解决方案1】:

    您应该尝试在编辑的verticalScrollBar() 上使用isVisible() 方法。

    这里按预期工作:

    #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;
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-14
      • 2021-11-13
      • 2013-07-28
      • 1970-01-01
      • 1970-01-01
      • 2015-03-06
      相关资源
      最近更新 更多