如何在qcombobox中放大垂直滚动条的宽度

时间:2014-06-28 09:27:08

标签: c++ qt

我想从C ++中的qcombobox扩大垂直滚动条的宽度。我通过以下方式尝试了它:

comboBox->setStyleSheet( "QScrollBar:vertical { width: 30px; }");

但是没有效果。

任何人都可以给我一个如何解决问题的提示吗?

1 个答案:

答案 0 :(得分:1)

您可以对样式进行子类化并重新实现QStyle::pixelMetric(),以便在度量标准为QStyle::PM_ScrollBarExtent时返回所需的宽度:

class Style : public QWindowsStyle
{
public:
  Style()
  {
  }
  int pixelMetric ( PixelMetric metric, const QStyleOption * option = 0, const QWidget * widget = 0 ) const
  {
    if (metric == QStyle::PM_ScrollBarExtent)
      return 30;
    return QWindowsStyle::pixelMetric(metric, option, widget);
  }

};

设置组合框的样式:

comboBox->setStyle(new Style());