Qt中使用GridLayout如何设置一个按钮占两个位置

问题如截图所示

解决方法:

//在gridlayout网格7,0位置,插入占两列一行的按钮0,位置根据自己的需要修改

gridLayout->addWidget(btn_equal,7,0,1,2);

​//在gridlayout网格6,4位置,插入占两行一列的按钮=,位置根据自己的需要修改

gridLayout->addWidget(btn_equal,6,4,2,1);

两行一列的按钮没法直接排好,需要添加语句:

btn_equal(你的按钮名)->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);


  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
容。可以使用QStackedWidget来实现这个功能。具体步骤如下: 1.在UI设计器添加一个QStackedWidget控件,并将其大小和位置调整到与QRadioButton控件相同的大小和位置。 2.在QStackedWidget控件添加两个QWidget,分别用于显示两个QRadioButton对应的内容。 3.将两个QRadioButton控件的clicked信号连接到一个槽函数,槽函数使用QStackedWidget的setCurrentIndex函数来切换显示的QWidget。 示例代码如下: ```python class MainWindow(QMainWindow): def __init__(self): super().__init__() self.setupUi() def setupUi(self): self.centralwidget = QtWidgets.QWidget(self) self.setCentralWidget(self.centralwidget) self.gridLayout = QtWidgets.QGridLayout(self.centralwidget) self.radioButton1 = QtWidgets.QRadioButton(self.centralwidget) self.radioButton2 = QtWidgets.QRadioButton(self.centralwidget) self.gridLayout.addWidget(self.radioButton1, 0, 0, 1, 1) self.gridLayout.addWidget(self.radioButton2, 1, 0, 1, 1) self.stackedWidget = QtWidgets.QStackedWidget(self.centralwidget) self.gridLayout.addWidget(self.stackedWidget, 0, 1, 2, 1) self.widget1 = QtWidgets.QWidget() self.label1 = QtWidgets.QLabel(self.widget1) self.label1.setText("This is content for radio button 1") layout1 = QtWidgets.QVBoxLayout(self.widget1) layout1.addWidget(self.label1) self.widget2 = QtWidgets.QWidget() self.label2 = QtWidgets.QLabel(self.widget2) self.label2.setText("This is content for radio button 2") layout2 = QtWidgets.QVBoxLayout(self.widget2) layout2.addWidget(self.label2) self.stackedWidget.addWidget(self.widget1) self.stackedWidget.addWidget(self.widget2) self.radioButton1.clicked.connect(lambda: self.stackedWidget.setCurrentIndex(0)) self.radioButton2.clicked.connect(lambda: self.stackedWidget.setCurrentIndex(1)) ``` 这个例子,我们创建了一个包含两个QRadioButton控件和一个QStackedWidget控件的界面。QStackedWidget控件包含两个QWidget控件,分别用于显示两个QRadioButton对应的内容。当用户点击其一个QRadioButton时,我们使用QStackedWidget的setCurrentIndex函数来切换显示的QWidget。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值