title: Change QSpinBox Arrow Size Without Changing App Style
body: <p>I'm trying to find a way to alter properties of a widget, such as size of a component or various borders and colours, without changing the default style of the widget (in this case, fusion). Still trying to get my head around style sheets in PyQT, could someone explain how to achieve the bigger arrow buttons without altering the style?</p>
  <p>Thanks in advance.</p>
  <pre><code>if __name__ == '__main__':
      app = QApplication(sys.argv)
  
      app.setStyle(&quot;fusion&quot;)
      #Trying to change the arrow size here, while maintaining their &quot;fusion&quot; style
      app.setStyleSheet(&quot;QSpinBox::up-button { width: 32px; }&quot;
                        &quot;QSpinBox::down-button { width: 32px; }&quot;)
      windowExample = basicWindow()
      windowExample.show()
      sys.exit(app.exec_())
  </code></pre>
  <p><a href="https://i.stack.imgur.com/x1jTY.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/x1jTY.png" alt="Without app.setStyleSheet" /></a><a href="https://i.stack.imgur.com/Uw3a9.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Uw3a9.png" alt="With app.setStyleSheet" /></a></p>
  <hr />
  <p>I'm using a Proxy Style for my sliders too in order to alter the slider size, hoping theres something similar for a spinbox:</p>
  <pre><code>class SliderProxyStyle(QProxyStyle):
      def pixelMetric(self, metric, option, widget):
          if metric == QStyle.PM_SliderThickness:
              return 20
          elif metric == QStyle.PM_SliderLength:
              return 40
          return super().pixelMetric(metric, option, widget)
  </code></pre>