Qt按钮占用的空间与文本所需的空间一样多

时间:2016-11-07 18:39:16

标签: qt layout pyqt qt-designer

我在Qt Designer中有一个按钮,我希望它总是占用所需文本的空间。我怎么能做到这一点?

我的意思是按钮上的文字是“Hello”,按钮是45px。

当我self.button.setText("Hello World")时,按钮将为85px。

我当前的“servers.ui”:

<item>
<widget class="QPushButton" name="pageLabel">
 <property name="sizePolicy">
  <sizepolicy hsizetype="Maximum" vsizetype="Preferred">
   <horstretch>0</horstretch>
   <verstretch>0</verstretch>
  </sizepolicy>
 </property>
 <property name="maximumSize">
  <size>
   <width>40</width>
   <height>16777215</height>
  </size>
 </property>
 <property name="text">
  <string/>
 </property>
 <property name="flat">
  <bool>true</bool>
 </property>
</widget>
</item>

我其实在谈论:

https://i.imgur.com/2I47qVR.png

1 个答案:

答案 0 :(得分:2)

使用byte[] bytes = IOUtils.toByteArray(getInputStreamForObject(fileName)); fileType = determineFileType(new ByteArrayInputStream(bytes)); docxParser.parse(new ByteArrayInputStream(bytes)) 代替QToolButton并清除其最大尺寸。

您可能需要将vertical size-policy设置为“Preferred”,以使其与其他按钮具有相同的高度。要获得一个平面按钮,请检查“autoRaise”属性。

更改按钮类的一种快捷方法是右键单击它,然后从上下文菜单中选择“变形为”。