Python的PyQt框架的使用-常用控件篇

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

Python的PyQt框架的使用-常用控件篇


一、前言

  • 个人主页: ζ小菜鸡
  • 大家好我是ζ小菜鸡小伙伴们让我们一起来学习Python的PyQt框架的常用控件。
  • 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)

二 、QLineEdit 文本框

  QLineEdit 是单行文本框该控件只能输入单行字符串。QLineEdit 控件还有一个兄弟是QTextEdit控件它是多行文本框可以输入多行字符串。


  QLineEdit 的常用方法如下表所示

方法名称描述
setText()设置文本框内显示的内容
text()获取文本框内容
setPlaceholderText()设置文本框浮显文字
setMaxLength()设置文本框显示字符的模式。有以下4种模式:
1.QLineEdit.Normal显示输入的字符这是默认设置。
2.QLineEdit.NoEcho不显示任何所输入的字符适用于即使密码长也需要保密的密码。
3.QLineEdit.Password显示与平台相关的密码掩码字符而不是实际输入的字符。
4.QLineEdit.PasswordEchoOnEdit在编辑时显示字符失去焦点后显示密码掩码字符。
clear()清楚文本框内容

  QLineEdit 控件实现登录界面
  使用QLabel 与 QLineEdit 单行文本框控件实现一个包含用户名和密码的登录界面。具体步骤如下


  1打开Qt Designer 工具根据需求在控制与布局的列表中向主窗体拖入两个Label控件与两个LineEdit控件然后为Label控件修改需要显示的文字如下图所示

在这里插入图片描述


  2选中主窗体的空白处然后在右侧的属性编辑器中找到windowTitle属性并将标题名称修改为“QLineEdit 单行文本框”如图所示

在这里插入图片描述


  3分别选中显示“账号”与“密码”的Label控件然后在右侧的属性编辑器中找到font属性并将“点大小字体大小”值修改为“12”如图所示

在这里插入图片描述


  4分别选中需要输入“账号”与“密码”的QLineEdit单文本框然后在右侧的属性编辑器中找到placeholderText属性并将值浮显文字修改为“请输入账号”与“请输入账号”如图所示

在这里插入图片描述


  5选中输入密码的QLineEdit控件然后在右侧的属性编辑器中找到echoMode属性并将值显示字符模式修改为“Password”如图所示

在这里插入图片描述


  6保存设计窗体的.ui文件转换为.py文件导入sys模块再添加显示主窗体的show_MainWindow()方法最后在程序的入口调用该方法运行程序后主窗体默认显示如图所示

在这里插入图片描述

  然后分别输入账户与密码后将显示如图所示

在这里插入图片描述

  显示主窗体的show_MainWindow()方法代码如下

def show_MainWindow():
    app = QtWidgets.QApplication(sys.argv)  # 实例化QApplication类作为GUI主程序入口
    Mainwindow = QtWidgets.QMainWindow()  # 创建MainWindow
    ui = Ui_MainWindow()  # 实例UI类
    ui.setupUi(Mainwindow)  # 设置窗体UI
    Mainwindow.show()  # 显示窗体
    sys.exit(app.exec_())  # 当窗口创建完成需要结束主循环过程

if __name__ == "__main__":
    show_MainWindow()

  QTextEdit多行文本框控件可以显示多行的文本内容当文本内容超出控件显示范围时该控件将显示垂直滚动条。QtextEdit控件不仅可以显示文本内容还可以显示HTML文档信息。

  QTextEdit的常用方法如表所示

方法名称描述
setPlainText()设置文本内容
toPlainText()获取文本内容
setTextColor()设置文本颜色例如红色可以将参数设置为QtGui.QColor(255,0,0)
setTextBackgroundColor()设置文本的背景颜色颜色参数与setTextColor()相同
setHtml()设置HTML文本内容
toHtml()获取HTML文本内容
wordWrapMode()设置自动换行
clear()清楚所有内容

三 、QPushButton按钮控件

  QPushButton是PyQt中最普通也是最常用的按钮之一QPushButton的常用方法如下表所示

方法名称描述
setText()设置按钮所显示的文本
text()获取按钮所显示的文本
setIcon()设置按钮上的图标可以将参数设置为QtGui.QIcon("图标路径)
setIconSize()设置按钮图标的大小参数设置为QtCore.QSizeint width,int height
setEnabled()设置按钮是否可用参数设置为False时按钮为不可用状态
setShortcut()设置按钮的快捷键参数可以设置为键盘中的按钮或组合键例如“Alt+0”

  如果需要QPushButton控件实现1个单击效果的时候可以使用以下的代码

# 参数中的self.click为单击事件所触发的方法名称
self.pushButton.clicken.connect(self.click)

四、QRadioButton 单选按钮

   QRadioButton也是按钮的一种多数用于实现“二选一” 或 “多选一”的选择现象。QRadioButton的常用方法如下表所示

方法名称描述
setText()设置单选按钮显示的文本
text()获取单选按钮显示的文本
setChecked()设置单选按钮是否为选中状态True为选中状态
isChecked()返回单选按钮的状态True 为选中状态False为未选中状态

   如果需要实现检测单选按钮的选中状态时可以使用以下代码

# 设置单选按钮的选中事件方法
        self.radioButton.toggled.connect(lambda: self.button_state(self.radioButton))
        self.radioButton_2.toggled.connect(lambda: self.button_state(self.radioButton_2))

    def button_state(self, button):
        if button.text() == "RadioButton1":  # 判断单选按钮的名称
            if button.isChecked() == True:  # 判断单选按钮是否被选中
                print(button.text() + "已选中")
            else:
                print(button.text() + "未被选中")

        if button.text() == "RadioButton2":  # 判断单选按钮的名称
            if button.isChecked() == True:  # 判断单选按钮是否被选中
                print(button.text() + "已选中")
            else:
                print(button.text() + "未被选中")

  Python的PyQt框架的使用-常用控件篇就聊到这里了感谢大家阅读如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)同时ζ小菜鸡在这里祝大家新年快乐


阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: python