PyQt中单元格的控件对齐

3 投票
1 回答
1153 浏览
提问于 2025-04-17 19:24

我正在用PyQT4和Python 2.7开发一个工具,但遇到了一点小问题。我在一个小部件里放了3个按钮,而这个小部件又放在一个表格的单元格(QTableWidget)里。我的问题是,我无法把这个小部件对齐到单元格的顶部,而且工具也没有把行的高度调整到小部件的最小高度或固定高度。

现在使用resizeRowToContents方法的效果是这样的。

我现在的样子

而我想要的效果是这样的。

我想要的样子

我之前尝试过固定行高的方法,但这并不是我想要的效果。

1 个回答

3

我用一种很简单的方法解决了这个问题。首先,我把布局的边距(margin)改成了0像素(后来我把它改成了3像素,以便有一些内边距),这样就把我的内容对齐到了左上角。接下来的步骤是为每一行设置最小大小,我是通过下面这行代码实现的:

self.verticalHeader().setMinimumSectionSize(30)

这行代码是在构造函数里加上的。

之后,我得到了我想要的效果:

  1. 上面和下面有一些内边距的组件
  2. 行的大小不固定,所以可以允许多行文本在每个项目里显示

撰写回答