qt 如何使用私有类?


在模块后面加上 -private 关键字,例如 widgets-private 然后 qmake 让配置文件运行一下。

在使用 QStackedLayout 布局并设置 QStackedLayout::StackAll 模式,且没有设置 QStackedLayout 父对象,则会默认显示最后一个元素,但内部下标还是 0,即栈底

// 添加元素
int QStackedLayout::addWidget(QWidget *widget)
{
    Q_D(QStackedLayout);
    return insertWidget(d->list.count(), widget);
}

int QStackedLayout::insertWidget(int index, QWidget *widget)
{
    Q_D(QStackedLayout);
    addChildWidget(widget);
    index = qMin(index, d->list.count());
    if (index < 0)
        index = d->list.count();
    QWidgetItem *wi = QLayoutPrivate::createWidgetItem(this, widget);
    d->list.insert(index, wi);
    invalidate();
    if (d->index < 0) {
        setCurrentIndex(index);
    } else {
        if (index <= d->index)
            ++d->index;
        if (d->stackingMode == StackOne)//判断显示模式
            widget->hide();
        widget->lower();//元素沉底
    }
    return index;
}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM