使用qt样式表在拉伸边框图像时保留角点

时间:2012-08-15 13:10:05

标签: qt stylesheet slice css3

我正在使用Qt 4.7并尝试将Qt样式表应用于我的应用程序。 如前所述here在border-image的帮助下,您可以使用“原样”左侧的角来拉伸图像。这是good example应该如何工作的Direct link。不幸的是我无法得到相同的结果。而不是保留角落,我正在切割和重复图像的中间部分。 我的代码中是否有任何错误或未在Qt中实现? (按钮通过gui设计师添加到MainWindow)。

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    a.setStyleSheet( "QPushButton{ border-image: url(:/border-image-marked.png) 25 30 10 20 repeat repeat; }" );

    MainWindow w;
    w.show();

    return a.exec();
}

图片取自上面的例子。 BorderImage它。

P.S。它适用于QML的{{3}}。

1 个答案:

答案 0 :(得分:1)

您正在尝试将styleSheet应用于不存在的QPushButton。

根据http://qt-project.org/doc/qt-4.8/stylesheet-reference.html#border-image-prop,只有以下元素支持此CSS属性:

  

QAbstractItemView子类支持此属性,   QAbstractSpinBox子类,QCheckBox,QComboBox,QFrame,QGroupBox,   QLabel,QLineEdit,QMenu,QMenuBar,QPushButton,QRadioButton,   QSplitter,QTextEdit和QToolTip。