【发布时间】:2023-03-08 08:23:01
【问题描述】:
我目前正在制作一个用户选择图像 qpushbutton 的程序。我已经在按钮类中取代了 mouseMoveEvent、mousePressEvent 和 mouseReleaseEvent 以获得可移动按钮。按钮当前正在独立移动,但我希望按钮移动以使它们之间的水平距离保持不变。
所以目前我有伪代码:
导入东西
将 mvbutton 导入为 mv
类MasterClass(QWidget):
def __init__(self, *args):
QWidget.__init__(self, *args)
#更多设置、布局等
self.addbutton(图像,名称,大小)
默认添加按钮(#args):
self.button=mv.dragbutton(#args)
#更多设置
#现在重命名,以便每个按钮都有自己的名称
如果名称==“名称1”:
self.name1=self.button
别的:
self.name2=self.button
self.button=""
#更多代码设置
我取代了拖动按钮类中的鼠标移动/按下/释放功能。因此,我不能在那里引用新的self.name#。所以我的拖动按钮类中的self.move(pos) 无法获得self.name#,因为它是一个不同的自我。关于如何让它发挥作用的任何想法?谢谢。
【问题讨论】:
-
您是否尝试过将两个按钮添加到一个小部件,而不是移动单个按钮.. 只需移动小部件。此外,在小部件中将按钮添加到布局时,只需定义间距。这样,水平间距将保持不变。
-
是的,我将让他们将按钮间隔设定的数量。我会试试 Qwidget 方法。
-
我将如何实现这个?我从来不需要这样做。我应该只创建一个 QWidget 类并将按钮附加到该小部件吗?我不确定我会怎么做。
-
@smitkpatel,我会设置一个 QWidget,然后将按钮嵌入到该 QWidget 中(如果是,如何?)。
标签: python qt python-2.7 pyqt