pyqt5制作python 关机GUI,os.system('shutdown -s -t 60')无法运行

阿白在哪里 2018-07-21 04:12:52
这是GUI类
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'shutdown.ui'
#
# Created by: PyQt5 UI code generator 5.11.2
#
# WARNING! All changes made in this file will be lost!

from PyQt5 import QtCore, QtGui, QtWidgets

class Ui_shutdown(object):
def setupUi(self, shutdown):
shutdown.setObjectName("shutdown")
shutdown.resize(301, 192)
font = QtGui.QFont()
font.setBold(True)
font.setWeight(75)
shutdown.setFont(font)
self.centralwidget = QtWidgets.QWidget(shutdown)
self.centralwidget.setObjectName("centralwidget")
self.label = QtWidgets.QLabel(self.centralwidget)
self.label.setGeometry(QtCore.QRect(110, 60, 21, 16))
font = QtGui.QFont()
font.setPointSize(15)
self.label.setFont(font)
self.label.setObjectName("label")
self.label_2 = QtWidgets.QLabel(self.centralwidget)
self.label_2.setGeometry(QtCore.QRect(190, 60, 41, 16))
font = QtGui.QFont()
font.setPointSize(15)
self.label_2.setFont(font)
self.label_2.setObjectName("label_2")
self.lineEdit = QtWidgets.QLineEdit(self.centralwidget)
self.lineEdit.setGeometry(QtCore.QRect(50, 60, 51, 20))
self.lineEdit.setObjectName("lineEdit")
self.lineEdit_3 = QtWidgets.QLineEdit(self.centralwidget)
self.lineEdit_3.setGeometry(QtCore.QRect(130, 60, 51, 20))
self.lineEdit_3.setObjectName("lineEdit_3")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(40, 110, 75, 23))
self.pushButton.setObjectName("pushButton")
self.pushButton_2 = QtWidgets.QPushButton(self.centralwidget)
self.pushButton_2.setGeometry(QtCore.QRect(160, 110, 75, 23))
self.pushButton_2.setObjectName("pushButton_2")
shutdown.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(shutdown)
self.menubar.setGeometry(QtCore.QRect(0, 0, 301, 23))
self.menubar.setObjectName("menubar")
shutdown.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(shutdown)
self.statusbar.setObjectName("statusbar")
shutdown.setStatusBar(self.statusbar)

self.retranslateUi(shutdown)
QtCore.QMetaObject.connectSlotsByName(shutdown)

def retranslateUi(self, shutdown):
_translate = QtCore.QCoreApplication.translate
shutdown.setWindowTitle(_translate("shutdown", "shutdown"))
self.label.setText(_translate("shutdown", "H"))
self.label_2.setText(_translate("shutdown", "min"))
self.pushButton.setText(_translate("shutdown", "关机"))
self.pushButton_2.setText(_translate("shutdown", "取消"))

下面是实例
from PyQt5 import QtCore, QtGui, QtWidgets
import sys,time,os
from shutdown import Ui_shutdown
class myshutdown(Ui_shutdown):
def __init__(self,shutdown):
super().setupUi(shutdown)
self.pushButton.clicked.connect(self.shut)
self.pushButton_2.clicked.connect(self.dis)
def shut(self):
h = int(self.lineEdit.text())
m = int(self.lineEdit_3.text())
H=int(time.strftime('%H',time.localtime()))
M=int(time.strftime('%M',time.localtime()))
print(m)
if H>h:
h = h+24
if M<=m:
c=(h-H)*3600+(m-M)*60
else:
c=(h-1-H)*3600+(60+m-M)*60
os.system('shutdown -s -t %d'%c)
print(h,m,H,M,c)
def dis(self):
os.system('shutdown -a')







if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = myshutdown(MainWindow)

MainWindow.show()
sys.exit(app.exec_())

运行时命令框一闪而过,并未关机
...全文
1063 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
tianfang 2018-07-27
  • 打赏
  • 举报
回复

os.system('shutdown -s -t %d'%c) -》 os.system('cmd shutdown /s -t %d'%c)

37,721

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧