1

我目前在 Ubuntu 11.04 Natty Narwhal 中使用 Eclipse 3.5.2 和 Qt Jambi 4.7.2

我正在尝试使用样式表来自定义我的 QCheckBox。我找到了 C++ 的示例,但找不到 Java 的等价物。我想使用样式表做类似于以下的事情。

QCheckBox::indicator {
    width: 13px;
    height: 13px;
}

QCheckBox::indicator:unchecked {
    image: url(:/images/checkbox_unchecked.png);
}

QCheckBox::indicator:unchecked:hover {
    image: url(:/images/checkbox_unchecked_hover.png);
}

QCheckBox::indicator:unchecked:pressed {
    image: url(:/images/checkbox_unchecked_pressed.png);
}

QCheckBox::indicator:checked {
    image: url(:/images/checkbox_checked.png);
}

QCheckBox::indicator:checked:hover {
    image: url(:/images/checkbox_checked_hover.png);
}

QCheckBox::indicator:checked:pressed {
    image: url(:/images/checkbox_checked_pressed.png);
}

如果有人可以帮助我,将不胜感激。提前致谢!

另外,有谁知道如何使 QCheckBox 更大?

4

2 回答 2

1

判断这个页面,你可以使用 QApplication::setStyleSheet() 和 QWidget::setStyleSheet() 来设置样式表。这些都不是静态函数,所以像

MyWidget widget = new MyWidget();
widget.setStyleSheet("path/to/stylesheet");

请注意,我自己没有尝试过这些样式表,作为 Jambi 的开发人员,我会对这些样式表是否真的有效以及是否可以修复它们感兴趣。

编辑:为了使复选框更大,也许最简单的方法是将它们包装到布局中并让布局填充整个小部件大小 - >在布局中使用一个项目,布局中的小部件将与附加布局的小部件一样大到。

于 2011-07-13T15:22:12.363 回答
0

为了更改复选框的大小,您可以使用

QCheckBox::indicator {
    width: 50px;
    height: 50px;
}

在您的样式表中。然而,这使得复选标记非常像素化,所以我继续使用

QCheckkBox::indicator:checked {
   border-image: url(classpath:Icons/checkmark.png);
}

连同第一件事。它工作得很好,复选标记可以是您想要使用的任何图像!

于 2011-08-02T17:19:08.583 回答