Pyqt5中addLayout和setLayout的区别

有些控件或者布局有addLayoutaddWidget的函数,但是有些就没有,比如QWidget这个控件就没有addLayoutaddWidget这个函数,取而代之的是一个setLayout函数,在addLayout函数中,我们可以多次使用addLayout来依次添加布局,addWidget亦是如此,但是setlayout只能set一次

总结发现,addLayoutaddWidget是用来管理布局
setLayout是将已设置好的布局应用到控件中去.

PythonPyQt5的QRadioButton是一种单选按钮控件。你可以添加多个QRadioButton并且只有其一个可以被选。这个控件可以用于二选一等需要用户从多个选项选择一个的场景。要使用QRadioButton,你需要使用QButtonGroup将它们归组并设置默认选项。 以下是一段简单的代码示例: ```python import sys from PyQt5.QtWidgets import QApplication, QWidget, QRadioButton, QLabel, QHBoxLayout, QVBoxLayout, QButtonGroup class Example(QWidget): def __init__(self): super().__init__() self.initUI() def initUI(self): self.label = QLabel('请选择你喜欢的编程语言:') self.rb1 = QRadioButton('Python') self.rb2 = QRadioButton('Java') self.rb3 = QRadioButton('C++') self.rb1.setChecked(True) hbox = QHBoxLayout() hbox.addWidget(self.rb1) hbox.addWidget(self.rb2) hbox.addWidget(self.rb3) self.group = QButtonGroup() self.group.addButton(self.rb1, 1) self.group.addButton(self.rb2, 2) self.group.addButton(self.rb3, 3) self.group.buttonClicked.connect(self.on_radio_button_clicked) vbox = QVBoxLayout() vbox.addWidget(self.label) vbox.addLayout(hbox) self.setLayout(vbox) self.setGeometry(300, 300, 300, 150) self.setWindowTitle('QRadioButton') self.show() def on_radio_button_clicked(self, id): rb = self.group.checkedButton() self.label.setText(f'你选择了{rb.text()}') if __name__ == '__main__': app = QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) ``` 在这个例子,我们创建了3个QRadioButton控件并将它们归为一组。我们设置了默认选项为Python。当用户选一个不同的选项时,我们通过连接group的buttonClicked信号和on_radio_button_clicked方法来更新选的选项,并将用户的选择打印到标签
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值