使用Python编写一个自动关机程序,并将其打包成可执行的exe文件

2024-07-06 23:58:08 作者:6kYzQ!yIEmp_M6UkZ
1. 实现功能

2. 实现步骤

导入模块

 

import os,sys,time  from PyQt5 import QtCore,QtWidgets,QtGui 

设置窗口

 

def 显示页面(self,页面):   # 设置窗口的位置和大小   页面.setGeometry(400,400,400,
如果分辨率高于200,那么设置窗口标题。将page.setWindowTitle('窗口关闭')。设置窗口图标。QtWidgets.QToolTip.setFont(QtGui.QFont('无衬线'))。10))   #建立提示   page.setToolTip('这是Window关闭工具') 

建立文本标签

 

self.label = QtWidgets.QLabel(page)  self.label.setGeometry(QtCore.QRect(60, 20, 120, 45)) self.label.setFont(QtGui.QFont("罗马 时代",10,QtGui.如果QFont.Bold为真创建一个文本标签和时间栏框。self.label2等于QtWidgets.QLabel(page)。self.label2.setGeometry(QtCore.QRect(100, 55, 40, 51))。设置文件的字体样式和大小。以自我.label2.setFont(QtGui.QFont("罗马 时刻", 10, QtGui.QFont.Bold))  

来创建一个包含日期文本框(QDateEdit)和时间文本框(QTimeEdit)的日期时间文本框。self.time = QtWidgets.QDateTimeEdit(page)\nself.time.setGeometry(QtCore.QRect(140, 70, 180, XXX)25))  self.time.setDisplayFormat("yyyy-MM-dd HH:mm:ss") 

要使用日历插件设置日期

self.time.setCalendarPopup(True) 

通过PyQt方法获取系统当前时间

 

现在 = QtCore.QDateTime.currentDateTime()  now_time = now.toString(QtCore.Qt.ISODate) 

将当前系统时间赋给时间框

 

now_time = time.strftime("%Y-%m-%d %H:%M:%S",time.获取本地时间()  self.setDateTime(QtCore.QDateTime.fromString(now_time, 'yyyy-MM-dd hh:mm:ss')) 

创建一个按钮并设置单击事件

 

self.btn = QtWidgets.QPushButton(page,clicked=self.shut) #self.btn.clicked.connect(self.shut(page)) self.btn.setToolTip('这是提交按钮') 

展示默认大小

#self.btn.resize(btn.sizeHint()) self.btn.move(110,110) 

创建一个按钮并设定关机任务点击事件

self.btn1 = QtWidgets.QPushButton(page,clicked = self.clear()\n#self.btn.clicked.connect(self.shut())\nself.btn1.setToolTip('这是清除任务的按钮')\n# 以下显示默认尺寸\nself.btn1.move(210, 110)\n# 设置一个文本提示框\nself.text = QtWidgets.QLabel(page)\nself.text.setGeometry(QtCore.QRect(25, 150, 350, 50))为了设置工具窗口内显示的部件文本信息,您需要执行以下操作:在self.text.setFont(QtGui.QFont("Roman times",14,QtGui.QFont.Bold))后添加self.setUI(page),然后执行page.show()。):   _translate = QtCore.QCoreApplication.translate     self.label.setText(_translate("page", "请输入关机时间"))    self.label2.setText(_translate("page", "日期:"))    self.btn.setText(_translate("page",提交":   self.btn1.setText(_translate("page", "清除")):   self.text.setText(_translate("page", "请设置关机时间!注:此文本需要进行编写和重构,只能使用简体中文。"\n"请注意:在添加关机计划时,需要进行以下操作:"\n"1. 在计划页面中点击添加关机按钮。"\n"2. 调用shut(self, page)函数。"\n"3. 获取要关机的时间,并解析为时间戳。"\n"4. 进行关机操作。"\n"shut(self,page)函数的代码如下:"\n"{def shut(self, page):"\n"datetime = self.time.text()"\n"t1 = time.strptime(datetime, '%Y-%m-%d %H:%M:%S')"\n"(具体关机操作省略)"\n"}%Y-%m-%d %H:%M:%S",t1 = int(time.mktime(t1)),nq = int(time.time()),d = t - nq。如果d大于0,则尝试执行os.system('shutdown -s -t %d' % d),self.text.setText("电脑将在%s关机!")。 % datetime)       若出现异常情况:       self.time.setDateTime('1')     除此之外:       设置失败,请再次尝试。 % 日期时间)       #self.time.setDateTime('1')     异常:       self.text.setText("设置失败!")   否则:     self.text.setText("日期设置错误!"}关机计划已经清除。 请看下面的代码:\ndef cleart(self, page):\n try:\n os.system('shutdown -a')\n self.text.setText("已经清除关机任务!")除非出现异常情况,否则将执行以下代码:\nself.text.setText("无法清除任务!")```python\nif __name__ == '__main__':\n 创建应用程序和对象\n app = QtWidgets.QApplication(sys.argv)\n page = QtWidgets.QWidget()\n ui = guanji()\n ui.pageShow(page)\n sys.exit(app.exec_())\n3、全部代码\nimport os, sys,\n```\n```python\nfrom PyQt5 import QtCore, QtWidgets, QtGui\nclass guanji(object):\n def pageShow(self, page):\n # 设置窗口的位置和大小\n page.setGeometry(400, 400, 400,\n```\n重新组织和改写为:\n```python\nfrom PyQt5 import QtCore, QtWidgets, QtGui\nclass Guanji:\n \n def page_show(self, page):\n # 设置窗口的位置和大小\n page.setGeometry(400, 400, 400, 400)\n```\n这样就更符合 Python 的命名规范,并且修复了代码中的缺失部分,确保代码的完整性和可读性。如果代码中指定的字体不可用,则会跳至中文(或其他)默认字体。当你使用Python编写一个程序时,通常会涉及到GUI界面的设计和交互功能。在你的代码片段中,看起来你正在使用PyQt或者类似的库来创建一个窗口应用程序,具体来说,这段代码涉及到以下几个方面:\n1. **创建主窗口和页面**: \n ```python\n page = QtWidgets.QMainWindow()\n ```\n 这行代码创建了一个主窗口对象 `page`,用于展示你的应用程序界面。\n2. **设置窗口标题**:\n ```python\n page.setWindowTitle('这是Window关机工具')\n ```\n 这行代码设置了窗口的标题为“这是Window关机工具”。\n3. **添加标签控件**:\n ```python\n self.label = QtWidgets.QLabel(page)\n ```\n 这行代码创建了一个标签控件 `label`,并将其添加到了 `page` 窗口中。\n4. **设置标签的位置和大小**:\n ```python\n self.label.setGeometry(QtCore.QRect(60, 20, 120, 45))\n ```\n 这行代码设置了标签控件的位置和大小。具体来说,它位于窗口中的坐标 (60, 20),宽度为120个像素,高度为45个像素。\n5. **设置标签的字体**:\n ```python\n self.label.setFont(QtGui.QFont('Arial', 10))\n ```\n 这行代码设置了标签控件显示文本的字体为Arial,字号为10号。\n以上就是你的代码片段的解析和说明。这种方式可以让你通过编程来创建和定制GUI界面,使得应用程序能够以更直观和用户友好的方式进行交互。```python\nself.label2 = QtWidgets.QLabel(page)\nself.label2.setGeometry(QtCore.QRect(100, 55, 40, 51))\nself.label2.setFont(QtGui.QFont("Times New Roman", 10, QtGui.QFont.Bold))\n```\n QtGui.如果字体设置为加粗(QFont.Bold)              self.time = QtWidgets.QDateTimeEdit(page)              self.time.setGeometry(QtCore.QRect(140,  70,  180,```python\nif (QtCore.QT_VERSION >= 0x50500):\n self.time.setDisplayFormat("yyyy-MM-dd HH:mm:ss")\n self.time.setCalendarPopup(True)\nnow_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())\nself.time.setDateTime(QtCore.QDateTime.fromString(now_time,\n```\nself.btn = QtWidgets.QPushButton(page, clicked=self.shut)\nself.btn.setToolTip('这是提交按钮')\nself.btn.move(110, 110)\nself.btn1 = QtWidgets.QPushButton(page,改写后:\nclicked=self.cleart\nself.btn1.setToolTip('点击此按钮清除任务')\nself.btn1.move(210, 110)\nself.text = QtWidgets.QLabel(page)\nself.text.setGeometry(QtCore.QRect(25, 150, 350, ...```python\nif (pageNumber > 25):\n self.text.setFont(QtGui.QFont("Times New Roman", 14, QtGui.QFont.Bold))\n self.setUI(page)\n page.show()\ndef setUI(self,\n```\nSure, here's the text rewritten:\n```python\n_translate = QtCore.QCoreApplication.translate\nself.label.setText(_translate("page", "请输入关机时间"))\nself.label2.setText(_translate("page", "日期:"))\nself.btn.setText(_translate("page",\n```\n这段代码使用了 PyQt 中的 `_translate` 函数来设置界面上的文本内容。`_translate` 函数通过传入的参数 `"page"` 和对应的文本信息来翻译成对应语言显示在界面上。提交"))     self.btn1.setText(_translate("page","清除"))     self.text.setText(_translate("page","请设置关机时间!"))))    def 关闭(self,页面):     日期时间 = self.time.text()     t1 = time.strptime(日期时间,将时间格式化为"%Y-%m-%d %H:%M:%S",使用time.mktime(t1)函数将t1转换为时间戳t,使用time.time()函数获取当前时间戳nq,计算差值d=t-nq。如果d大于0,则执行关机操作,显示文本“电脑将在%s关机!”。\n说明:本文旨在简化原文的表达方式,将语言更换为简体中文,同时进行语言规范性的调整。 % datetime)       除非:         self.text.setText("无法设置!" % datetime)       除非:         self.text.setText("设置失败!")     否则:       self.text.setText("日期设置出错!"```python\ndef cleart(self, page):\n try:\n os.system('shutdown -a')\n self.text.setText("已经清除关机任务!")\n```\n除非:self.text.setText("清除任务失败!")如果__name__=='__main__': 创建应用程序和页面的实例。 然后显示页面,并且执行应用程序。

在线咨询 拨打电话

电话

02088888888

微信二维码

微信二维码