PyQt5图形界面--基础笔记

from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QToolTip, QLabel, QLineEdit
from PyQt5.QtGui import QIcon, QFont, QPixmap
import sys

'''
https://www.bitbug.net/  将图片转换为ico格式, 用来更改打包的文件图标
-F 只产生exe文件, 其他临时文件不产生
-i 采用的文件图片
在终端使用命令pyinstaller -F picture_create.py -i pic.ico
'''

'''pyqt5 sys介绍'''
# argv[0]是本脚本名称, argv[0]之后的内容为脚本参数
print(sys.argv)

# 此处要从外部传递参数, 需在cmd中传递并执行
# for i in range(int(sys.argv[1])):
#     print(f'执行{i}')

# sys.exit(0) 为正常退出, 非0为异常退出, 参数可以任意填写, 也可以不写
# sys.exit()

# sys.version获取当前python解释器版本信息
print(sys.version)
# 如果版本过低, 将不能运行
# if sys.version < str(3.11):
#     print('当前版本过低, 请更新版本')
#     sys.exit()

if __name__ == '__main__':
    '''当本py文件其他对象import导入时, 不执行一下代码'''
    # QApplication管理 GUI程序(图形界面) 的控制流和主要设置
    # sys.argv是一个从程序外部获取参数的桥梁, 当前为本代码路径
    app = QApplication(sys.argv)

    # QWidget控件是一个用户界面的基本控件, 这里是一个窗口(window)
    w = QWidget()

    '''-------------窗口位置-------------'''
    w.resize(600, 300)  # 窗口大小设置, 可以默认
    w.move(600, 300)  # 修稿窗口位置, 可以默认
    # w.setGeometry(600, 300, 800, 500)  # setGeometry((move), (resize))

    '''-------------标题, 图标, 气泡提示------------'''
    # 给窗口添加标题
    w.setWindowTitle('pycharm')
    # 给窗口添加图标
    w.setWindowIcon(QIcon('./pycharm.png'))
    # 气泡提示
    # w.setToolTip('窗口')
    # 字体格式
    QToolTip.setFont(QFont('microsoft Yahei', 20))

    '''--------------标签--------------'''
    # # 标签及气泡提示
    # a = QLabel(w)
    # # info = input('请输入标签信息:')
    # # label.setText(info)
    # # print(label.text())
    # a.setText('菜单')
    # a.setFont(QFont('microsoft Yahei', 20))
    # a.setToolTip('选项')
    # # b标签
    # b = QLabel(w)
    # b.setPixmap(QPixmap('./bitbug_favicon.ico'))
    # b.move(0, 75)

    '''---------------创建用户名和密码界面--------------'''
    c = QLabel(w)
    c.setText('用户名:')
    c.move(100, 100)
    d = QLineEdit(w)
    d.setPlaceholderText('请输入用户名')
    d.move(170, 95)
    e = QLabel(w)
    e.setText('密码:')
    e.move(115, 130)
    f = QLineEdit(w)
    f.setPlaceholderText('请输入6位数密码')
    f.move(170, 125)

    '''--------------按钮--------------'''
    btn1 = QPushButton('按钮1', w)
    btn2 = QPushButton('按钮2', w)
    # 插入图片按钮
    btn2.setIcon(QIcon('./bitbug_favicon.ico'))
    btn2.move(100, 0)
    '''
    具体按钮和复选框的使用, 查看game1.py
    '''

    w.show()  # 显示窗口
    # print(app.exec_())
    sys.exit(app.exec_())  # app.exec_()系统程序中的关闭窗口指令, 点击 X 返回0, 程序退出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PyQt5是一个流行的Python GUI库,可以用于开发图形界面应用程序。关于笔记本电量的问题,PyQt5可以通过调用相关的系统API来获取电池的状态和电池电量信息。 在PyQt5中,可以使用QSystemTrayIcon类来创建系统托盘图标,并通过调用QSystemTrayIcon的相关方法实现获取电池信息并显示在托盘图标上。 首先,我们需要导入PyQt5和相关的模块: ```python from PyQt5.QtWidgets import QApplication, QSystemTrayIcon, QMenu, QAction from PyQt5.QtGui import QIcon from PyQt5.QtCore import Qt, QTimer ``` 然后,我们创建一个QApplication实例和一个QSystemTrayIcon实例: ```python app = QApplication([]) tray_icon = QSystemTrayIcon(QIcon('battery_icon.png'), app) ``` 接下来,我们定义一个函数来获取电池电量信息,并将其显示在托盘图标上: ```python def update_battery_info(): battery_info = app.primaryScreen().virtualSiblings()[0].backendObject().batteryInfo() battery_percentage = battery_info.percent() battery_status = battery_info.state() tray_icon.setToolTip(f'Battery: {battery_percentage}%, Status: {battery_status}') ``` 然后,我们创建一个定时器来定期更新电池电量信息: ```python timer = QTimer() timer.timeout.connect(update_battery_info) timer.start(10000) # 10秒更新一次 ``` 最后,我们在托盘图标上创建一个菜单,并将应用程序与托盘图标关联起来: ```python menu = QMenu() exit_action = QAction('Exit', app) exit_action.triggered.connect(app.quit) menu.addAction(exit_action) tray_icon.setContextMenu(menu) tray_icon.show() app.exec_() ``` 以上代码中的battery_icon.png是一个自定义的电池图标文件,可以根据自己的需求替换。 这样,当我们运行这段代码时,就会在系统托盘中显示一个电池图标,并且会定时更新电池电量信息。当我们单击右键时,会打开一个菜单,可以选择退出应用程序。 希望这个回答对您有帮助!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值