pyqt5中sender方法介绍_对PyQt5基本窗口控件 QMainWindow的使用详解

QMainWindow基本介绍

QMainWindow主窗口为用户提供了一个应用程序框架,它有自己的布局,可以在布局中添加控件。

窗口类型介绍

PyQt5中,主要使用以下三个类来创建窗口,可以直接使用,也可以继承后再使用

QMainWindow

QWidget

QDialog

QMainWindow

QMainWindow可以包含菜单栏,工具栏,状态栏,标题栏等,是GUI程序的主窗口。

如果我们需要创建主窗口程序,就使用该类。

QDialog

QDialog是对话框窗口的基类,对话框一般用来执行短期任务,或者与用户进行互动,它可以是模态的也可以是非模态的。QDialog没有菜单栏,工具栏,状态栏等。

如果我们需要的是对话框,就选择该类。

QWidget

该类作为QMainWindow和QWidget的父类,并未细化到主窗口或者对话框,作为通用窗口类,如果不确定具体使用哪种窗口类,就可以使用该类。

创建主窗口

如果一个窗口包含一个或者多个窗口,这个窗口就是父窗口,被包含的窗口就是子窗口。没有父窗口的窗口就是顶层窗口,QMainWindow就是顶层窗口,它可以包含很多界面元素。

在OyQt中,在主窗口中会有一个控件(Widget)占位符来占着中心窗口,可以使用setCentralWidget()来设置中心窗口。

重要方法

方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我会尽力回答您的问题。 首先,您需要安装PyQt5,可以使用以下命令进行安装: ``` pip install PyQt5 ``` 然后,您需要打开designer.exe进行UI设计。可以通过以下命令打开designer.exe: ``` pyqt5-tools designer ``` 接下来,按照以下步骤进行设计: 1. 选择“Main Window”模板。 2. 在窗口添加一个“QLineEdit”组件作为显示区域,设置其为只读。 3. 在窗口添加多个“QPushButton”组件作为数字和操作符按钮,设置其文本为相应的数字和操作符。 4. 在窗口添加一个“QPushButton”组件作为“清空”按钮,设置其文本为“C”。 5. 在窗口添加一个“QPushButton”组件作为“等于”按钮,设置其文本为“=”。 6. 将所有按钮的大小和位置进行调整,使其更加美观。 完成UI设计后,保存UI文件并使用以下命令将其转换为Python代码: ``` pyuic5 -o calculator.py calculator.ui ``` 最后,编写Python代码实现计算器的基本功能。可以使用以下代码实现: ```python from PyQt5.QtWidgets import QApplication, QMainWindow from PyQt5 import uic class Calculator(QMainWindow): def __init__(self): super().__init__() uic.loadUi('calculator.ui', self) self.clearButton.clicked.connect(self.clearDisplay) self.equalButton.clicked.connect(self.calculateResult) self.numberButtons = [self.number0Button, self.number1Button, self.number2Button, self.number3Button, self.number4Button, self.number5Button, self.number6Button, self.number7Button, self.number8Button, self.number9Button] self.operatorButtons = [self.plusButton, self.minusButton, self.multiplyButton, self.divideButton] for button in self.numberButtons: button.clicked.connect(self.appendNumber) for button in self.operatorButtons: button.clicked.connect(self.appendOperator) self.display = '' self.operator = '' self.result = 0 def clearDisplay(self): self.display = '' self.operator = '' self.result = 0 self.displayLineEdit.setText('0') def appendNumber(self): button = self.sender() number = button.text() self.display += number self.displayLineEdit.setText(self.display) def appendOperator(self): button = self.sender() self.operator = button.text() self.result = int(self.display) self.display = '' def calculateResult(self): if self.operator == '+': self.result += int(self.display) elif self.operator == '-': self.result -= int(self.display) elif self.operator == '*': self.result *= int(self.display) elif self.operator == '/': self.result /= int(self.display) self.displayLineEdit.setText(str(self.result)) if __name__ == '__main__': app = QApplication([]) calculator = Calculator() calculator.show() app.exec_() ``` 这个代码实现了一个简单的计算器,可以进行加、减、乘、除四种运算。当然,您也可以根据自己的需要进行扩展。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值