如何设置QScrollBar的句柄并使其可扩展?

时间:2011-09-14 23:17:59

标签: c++ qt

我的桌子上有一个样式化的QScrollBar,它使用一个图像作为滚动条的句柄。手柄在边缘处是圆形的(当然,边缘周围的图像具有透明度)。现在的问题是,我似乎无法让它重新调整大小。 它是一个垂直滚动条,所以我找到工作的唯一方法是设置:

background-image: url(:/res/img/scrollbar-vhandle.png);
background-repeat: repeat-y;

在我的样式表中。这应该是什么,只有我的滚动条看起来很丑,特别是因为圆角。

通过从y中心重复1px高线,可以很好地“拉伸”图像。但即使是拉伸也应该没问题。我找不到一个好办法。 像QPushButton这样的东西,其中9个图像可以用于1个按钮以便扩展可以工作,但遗憾的是它看起来并不像。

所以,如果有人能告诉我这是通过样式表(或从QScrollBar派生并重新绘制句柄)的方式,我会非常感激。

如果您需要更多信息,请告诉我。

1 个答案:

答案 0 :(得分:0)

好吧,正如你所说,你可以从滚动条继承并重载paintEvent函数。在那里你几乎可以随心所欲,例如通过重复那一行并绘制它来计算你的新像素图。在QPixmap中实际上有一些功能可以使这相对容易。