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

Preserving corners while stretching border image usging qt stylesheet(使用qt样式表在拉伸边框图像时保留边角)

本文介绍了使用qt样式表在拉伸边框图像时保留边角的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Qt4.7,并尝试将Qt样式表应用到我的应用程序中。 如here所述,在边框图像的帮助下,您可以"按原样"拉伸图像的左角。这里有一个good example应该如何工作的说明。不幸的是,我无法得到同样的结果。图像的中间部分被切割和重复,而不是保留的角落。 我的代码中有没有什么错误或者没有在Qt中实现?(通过图形用户界面设计器添加到主窗口的按钮)。

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();
}

图片取自上面的示例。Direct link到它。

附注:它在QML的BorderImage中运行良好。

推荐答案

您正尝试将样式表应用于不存在的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。

这篇关于使用qt样式表在拉伸边框图像时保留边角的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:使用qt样式表在拉伸边框图像时保留边角

基础教程推荐