首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置等离子::按钮的大小?

设置等离子::按钮的大小?
EN

Stack Overflow用户
提问于 2012-01-09 18:41:10
回答 1查看 220关注 0票数 0

我正在尝试实现一个简单的KDE等离子体插件,它包含两个PushButtons和一个KLineEdit,

但似乎KLineEdit和PushButton有一个最小尺寸,如果面板没有足够的高度,一些部件会在面板上消失,它不会随着面板的缩小而缩小。

由于我已经将QSizePolicy设置为最小,我不明白为什么现在当用户拖动面板时它会调整大小?

谢谢,下面是主要的类文件:

代码语言:javascript
复制
#include <Plasma/Theme>
#include <Plasma/Corona>
#include <Plasma/Containment>
#include <Plasma/ToolTipManager>

K_EXPORT_PLASMA_APPLET(runcommand, RunCommandApplet)

RunCommandApplet:: RunCommandApplet(QObject *parent, const QVariantList &args) : Plasma::Applet(parent, args)
{
        paste_button = new Plasma::PushButton (this);
        paste_button->setText (tr("Pa"));

        m_button = new Plasma::PushButton (this);
        m_button->setText (tr("Ki"));

        m_lineEdit = new Plasma::LineEdit (this);

        QGraphicsLinearLayout *layout = new QGraphicsLinearLayout ();
        layout->addItem (m_button);
        layout->addItem (paste_button);
        layout->addItem (m_lineEdit);
            setLayout(layout);

        constraintsEvent(Plasma::FormFactorConstraint | Plasma::ImmutableConstraint);

        Plasma::ToolTipManager::self()->setContent(this, Plasma::ToolTipContent(i18n("Client"), i18n("Some Client"), KIcon("system-run").pixmap(IconSize(KIconLoader::Desktop))));

}

void RunCommandApplet::constraintsEvent(Plasma::Constraints constraints)
{
        m_button->setSizePolicy(QSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum));
        paste_button->setSizePolicy(QSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum));
        m_lineEdit->setSizePolicy(QSizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum));
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-11 19:15:22

默认情况下,Plasm::PushButtons的QSizePolicy是最小的。尝试设置QSizePolicy::ShrinkFlag标志。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8787147

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档