怎么用Python编写一个自动关机程序
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,本篇内容介绍了"怎么用Python编写一个自动关机程序"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
千家信息网最后更新 2025年11月07日怎么用Python编写一个自动关机程序
本篇内容介绍了"怎么用Python编写一个自动关机程序"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
1、实现效果

2、实现步骤
模块导入
import os,sys,timefrom PyQt5 import QtCore,QtWidgets,QtGui
窗口设置
def pageShow(self,page): #设置窗口的位置和大小 page.setGeometry(400,400,400,200) #设置窗口的标题 page.setWindowTitle('Window shutdown') #设置窗口的图标 #page.setWindowIcon(QtGui.QIcon('#ddffgg')) #设置工具中提示的字体样式 QtWidgets.QToolTip.setFont(QtGui.QFont('SansSerif',10)) #创建一个提示 page.setToolTip('这是Window关机工具')创建一个文本标签
self.label = QtWidgets.QLabel(page)self.label.setGeometry(QtCore.QRect(60, 20, 120, 45))self.label.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))创建一个文本标签和时间栏框
self.label2 = QtWidgets.QLabel(page)self.label2.setGeometry(QtCore.QRect(100, 55, 40, 51))
设置该文件的字体样式,大小。
self.label2.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))创建一个日期时间文本框,QDateEdit表示添加日期文本框,QTimeEdit表示添加时间文本框。
self.time = QtWidgets.QDateTimeEdit(page)
设置日期时间框的位置大小依次是左间距,上间距,宽,高。
self.time.setGeometry(QtCore.QRect(140, 70, 180, 25))self.time.setDisplayFormat("yyyy-MM-dd HH:mm:ss")设置日期可以使用日历插件
self.time.setCalendarPopup(True)
根据PyQt方法获取系统的当前时间
now = QtCore.QDateTime.currentDateTime()now_time = now.toString(QtCore.Qt.ISODate)
将当前系统时间赋值给时间框中
now_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())self.time.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.cleart)#self.btn.clicked.connect(self.shut())self.btn1.setToolTip('这里是清除任务按钮')显示默认尺寸
self.btn1.move(210,110)
设置一个文本提示框
self.text = QtWidgets.QLabel(page)self.text.setGeometry(QtCore.QRect(25, 150, 350, 25))self.text.setFont(QtGui.QFont("Roman times",14,QtGui.QFont.Bold))self.setUI(page)page.show()设置工具窗口中显示的部件文本信息
def setUI(self,page): _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","请设置关机时间!"))添加关机计划
def shut(self,page): datetime = self.time.text() t1 = time.strptime(datetime,"%Y-%m-%d %H:%M:%S") t = int(time.mktime(t1)) nq = int(time.time()) d = t-nq #print(d) #exit() if d>0: try: os.system('shutdown -s -t %d' % d) self.text.setText("电脑将在%s关机!" % datetime) #self.time.setDateTime('1') except: self.text.setText("设置失败!") else: self.text.setText("日期设置错误!")清除关机计划
def cleart(self,page): try: os.system('shutdown -a') self.text.setText("已经清除关机任务!") except: self.text.setText("清除任务失败!") if __name__=='__main__':创建应用程序和对象
app = QtWidgets.QApplication(sys.argv)page = QtWidgets.QWidget()ui = guanji()ui.pageShow(page)sys.exit(app.exec_())
3、全部代码
import os,sys,timefrom PyQt5 import QtCore,QtWidgets,QtGuiclass guanji(object): def pageShow(self,page): #设置窗口的位置和大小 page.setGeometry(400,400,400,200) #设置窗口的标题 page.setWindowTitle('Window shutdown') #设置窗口的图标 #page.setWindowIcon(QtGui.QIcon('#ddffgg')) #设置工具中提示的字体样式 QtWidgets.QToolTip.setFont(QtGui.QFont('SansSerif',10)) #创建一个提示 page.setToolTip('这是Window关机工具') self.label = QtWidgets.QLabel(page) self.label.setGeometry(QtCore.QRect(60, 20, 120, 45)) self.label.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold)) self.label2 = QtWidgets.QLabel(page) self.label2.setGeometry(QtCore.QRect(100, 55, 40, 51)) self.label2.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold)) self.time = QtWidgets.QDateTimeEdit(page) self.time.setGeometry(QtCore.QRect(140, 70, 180, 25)) self.time.setDisplayFormat("yyyy-MM-dd HH:mm:ss") self.time.setCalendarPopup(True) now_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) self.time.setDateTime(QtCore.QDateTime.fromString(now_time, 'yyyy-MM-dd hh:mm:ss')) self.btn = QtWidgets.QPushButton(page,clicked=self.shut) self.btn.setToolTip('这里是提交按钮') self.btn.move(110,110) self.btn1 = QtWidgets.QPushButton(page,clicked=self.cleart) self.btn1.setToolTip('这里是清除任务按钮') self.btn1.move(210,110) self.text = QtWidgets.QLabel(page) self.text.setGeometry(QtCore.QRect(25, 150, 350, 25)) self.text.setFont(QtGui.QFont("Roman times",14,QtGui.QFont.Bold)) self.setUI(page) page.show() def setUI(self,page): _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","请设置关机时间!")) def shut(self,page): datetime = self.time.text() t1 = time.strptime(datetime,"%Y-%m-%d %H:%M:%S") t = int(time.mktime(t1)) nq = int(time.time()) d = t-nq if d>0: try: os.system('shutdown -s -t %d' % d) self.text.setText("电脑将在%s关机!" % datetime) except: self.text.setText("设置失败!") else: self.text.setText("日期设置错误!") def cleart(self,page): try: os.system('shutdown -a') self.text.setText("已经清除关机任务!") except: self.text.setText("清除任务失败!") if __name__=='__main__': app = QtWidgets.QApplication(sys.argv) page = QtWidgets.QWidget() ui = guanji() ui.pageShow(page) sys.exit(app.exec_())"怎么用Python编写一个自动关机程序"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
时间
日期
任务
文本
按钮
工具
提示
大小
程序
位置
字体
样式
事件
内容
图标
尺寸
更多
机时
标签
标题
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
达芬奇怎么删除建立的数据库
提高数据库的安全性
泗洪进口网络技术哪家好
数据库系统概论必背
家用网络安全知识培训
2021金盾信安杯网络安全大赛
社会科学词条数据库
成都蓝讯网络技术有限公司
贵州网络技术服务含义
从服务器拷贝东西没反应
金华nas存储服务器找哪家
法制报告的心得体会关于网络安全
如何测试数据库是否
服务器托管优势
网络技术吞吐量
2020年湖北生活网络安全
郑州的网络安全
张家界网络安全管理与维护技术
梦幻西游18门派服务器闯关数据
有关网络安全1500
网络安全服务OkR
文创与大数据库
网络安全与信息化相关法律
金华nas存储服务器找哪家
lucene数据库
数云高弹性数据库怎么用
艾佩菲宁互联网科技有限公司
价格几个亿的数据库
电信5G杯 网络安全
qt密码数据库不安全