自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

用Python寫一個(gè)自動(dòng)關(guān)機(jī)程序,并打包成exe可執(zhí)行程序

開發(fā) 后端
用Python寫一個(gè)自動(dòng)關(guān)機(jī)程序,并打包成exe可執(zhí)行程序,一共分三步。

1、實(shí)現(xiàn)效果

2、實(shí)現(xiàn)步驟

模塊導(dǎo)入

 

  1. import os,sys,time  
  2. from PyQt5 import QtCore,QtWidgets,QtGui 

窗口設(shè)置

 

  1. def pageShow(self,page): 
  2.   #設(shè)置窗口的位置和大小 
  3.   page.setGeometry(400,400,400,200) 
  4.   #設(shè)置窗口的標(biāo)題 
  5.   page.setWindowTitle('Window shutdown'
  6.   #設(shè)置窗口的圖標(biāo) 
  7.   #page.setWindowIcon(QtGui.QIcon('#ddffgg')) 
  8.   #設(shè)置工具中提示的字體樣式 
  9.   QtWidgets.QToolTip.setFont(QtGui.QFont('SansSerif',10)) 
  10.   #創(chuàng)建一個(gè)提示 
  11.   page.setToolTip('這是Window關(guān)機(jī)工具'

創(chuàng)建一個(gè)文本標(biāo)簽

 

  1. self.label = QtWidgets.QLabel(page)  
  2. self.label.setGeometry(QtCore.QRect(60, 20, 120, 45)) 
  3. self.label.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold)) 

創(chuàng)建一個(gè)文本標(biāo)簽和時(shí)間欄框

 

  1. self.label2 = QtWidgets.QLabel(page)  
  2. self.label2.setGeometry(QtCore.QRect(100, 55, 40, 51)) 

設(shè)置該文件的字體樣式,大小。

  1. self.label2.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold)) 

創(chuàng)建一個(gè)日期時(shí)間文本框,QDateEdit表示添加日期文本框,QTimeEdit表示添加時(shí)間文本框。

  1. self.time = QtWidgets.QDateTimeEdit(page) 

設(shè)置日期時(shí)間框的位置大小依次是

 

  1. self.time.setGeometry(QtCore.QRect(140, 70, 180, 25))  
  2. self.time.setDisplayFormat("yyyy-MM-dd HH:mm:ss"

設(shè)置日期可以使用日歷插件

  1. self.time.setCalendarPopup(True

根據(jù)PyQt方法獲取系統(tǒng)的當(dāng)前時(shí)間

 

  1. now = QtCore.QDateTime.currentDateTime()  
  2. now_time = now.toString(QtCore.Qt.ISODate) 

將當(dāng)前系統(tǒng)時(shí)間賦值給時(shí)間框中

 

  1. now_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime())  
  2. self.time.setDateTime(QtCore.QDateTime.fromString(now_time, 'yyyy-MM-dd hh:mm:ss')) 

一個(gè)按鈕并設(shè)置添加單擊事件

 

  1. self.btn = QtWidgets.QPushButton(page,clicked=self.shut) 
  2. #self.btn.clicked.connect(self.shut(page)) 
  3. self.btn.setToolTip('這里是提交按鈕'

顯示默認(rèn)尺寸

 

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

創(chuàng)建一個(gè)按鈕并設(shè)置清除關(guān)機(jī)任務(wù)單擊事件

 

  1. self.btn1 = QtWidgets.QPushButton(page,clicked=self.cleart) 
  2. #self.btn.clicked.connect(self.shut()) 
  3. self.btn1.setToolTip('這里是清除任務(wù)按鈕'

顯示默認(rèn)尺寸

  1. self.btn1.move(210,110) 

設(shè)置一個(gè)文本提示框

 

  1. self.text = QtWidgets.QLabel(page) 
  2. self.text.setGeometry(QtCore.QRect(25, 150, 350, 25)) 
  3. self.text.setFont(QtGui.QFont("Roman times",14,QtGui.QFont.Bold)) 
  4.  
  5. self.setUI(page) 
  6. page.show() 

設(shè)置工具窗口中顯示的部件文本信息

 

  1. def setUI(self,page): 
  2.   _translate = QtCore.QCoreApplication.translate  
  3.  
  4.   self.label.setText(_translate("page","請(qǐng)輸入關(guān)機(jī)時(shí)間")) 
  5.   self.label2.setText(_translate("page","日期:")) 
  6.   self.btn.setText(_translate("page","提交")) 
  7.   self.btn1.setText(_translate("page","清除")) 
  8.   self.text.setText(_translate("page","請(qǐng)?jiān)O(shè)置關(guān)機(jī)時(shí)間!")) 

添加關(guān)機(jī)計(jì)劃

 

  1. def shut(self,page): 
  2.   datetime = self.time.text() 
  3.   t1 = time.strptime(datetime,"%Y-%m-%d %H:%M:%S"
  4.   t = int(time.mktime(t1)) 
  5.   nq = int(time.time()) 
  6.   d = t-nq 
  7.   #print(d) 
  8.   #exit() 
  9.   if d>0: 
  10.     try: 
  11.       os.system('shutdown -s -t %d' % d) 
  12.       self.text.setText("電腦將在%s關(guān)機(jī)!" % datetime) 
  13.       #self.time.setDateTime('1'
  14.     except
  15.       self.text.setText("設(shè)置失?。?quot;
  16.   else
  17.     self.text.setText("日期設(shè)置錯(cuò)誤!"

清除關(guān)機(jī)計(jì)劃

 

  1. def cleart(self,page): 
  2.   try: 
  3.     os.system('shutdown -a'
  4.     self.text.setText("已經(jīng)清除關(guān)機(jī)任務(wù)!"
  5.   except
  6.     self.text.setText("清除任務(wù)失??!")   
  7.  
  8. if __name__=='__main__'

創(chuàng)建應(yīng)用程序和對(duì)象

 

  1. app = QtWidgets.QApplication(sys.argv) 
  2. page = QtWidgets.QWidget() 
  3. ui = guanji() 
  4. ui.pageShow(page) 
  5. sys.exit(app.exec_()) 

3、全部代碼

 

  1. import os,sys,time 
  2. from PyQt5 import QtCore,QtWidgets,QtGui 
  3.  
  4. class guanji(object): 
  5.  
  6.   def pageShow(self,page): 
  7.     #設(shè)置窗口的位置和大小 
  8.     page.setGeometry(400,400,400,200) 
  9.     #設(shè)置窗口的標(biāo)題 
  10.     page.setWindowTitle('Window shutdown'
  11.     #設(shè)置窗口的圖標(biāo) 
  12.     #page.setWindowIcon(QtGui.QIcon('#ddffgg')) 
  13.     #設(shè)置工具中提示的字體樣式 
  14.     QtWidgets.QToolTip.setFont(QtGui.QFont('SansSerif',10)) 
  15.     #創(chuàng)建一個(gè)提示 
  16.     page.setToolTip('這是Window關(guān)機(jī)工具'
  17.  
  18.     self.label = QtWidgets.QLabel(page) 
  19.     self.label.setGeometry(QtCore.QRect(60, 20, 120, 45)) 
  20.     self.label.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold)) 
  21.     self.label2 = QtWidgets.QLabel(page) 
  22.     self.label2.setGeometry(QtCore.QRect(100, 55, 40, 51)) 
  23.     self.label2.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold)) 
  24.     self.time = QtWidgets.QDateTimeEdit(page) 
  25.     self.time.setGeometry(QtCore.QRect(140, 70, 180, 25)) 
  26.     self.time.setDisplayFormat("yyyy-MM-dd HH:mm:ss"
  27.     self.time.setCalendarPopup(True
  28.     now_time = time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) 
  29.     self.time.setDateTime(QtCore.QDateTime.fromString(now_time, 'yyyy-MM-dd hh:mm:ss')) 
  30.  
  31.     self.btn = QtWidgets.QPushButton(page,clicked=self.shut) 
  32.     self.btn.setToolTip('這里是提交按鈕'
  33.     self.btn.move(110,110) 
  34.  
  35.     self.btn1 = QtWidgets.QPushButton(page,clicked=self.cleart) 
  36.     self.btn1.setToolTip('這里是清除任務(wù)按鈕'
  37.     self.btn1.move(210,110) 
  38.     self.text = QtWidgets.QLabel(page) 
  39.     self.text.setGeometry(QtCore.QRect(25, 150, 350, 25)) 
  40.     self.text.setFont(QtGui.QFont("Roman times",14,QtGui.QFont.Bold)) 
  41.  
  42.     self.setUI(page) 
  43.     page.show() 
  44.   def setUI(self,page): 
  45.     _translate = QtCore.QCoreApplication.translate  
  46.  
  47.     self.label.setText(_translate("page","請(qǐng)輸入關(guān)機(jī)時(shí)間")) 
  48.     self.label2.setText(_translate("page","日期:")) 
  49.     self.btn.setText(_translate("page","提交")) 
  50.     self.btn1.setText(_translate("page","清除")) 
  51.     self.text.setText(_translate("page","請(qǐng)?jiān)O(shè)置關(guān)機(jī)時(shí)間!")) 
  52.  
  53.   def shut(self,page): 
  54.     datetime = self.time.text() 
  55.     t1 = time.strptime(datetime,"%Y-%m-%d %H:%M:%S"
  56.     t = int(time.mktime(t1)) 
  57.     nq = int(time.time()) 
  58.     d = t-nq 
  59.     if d>0: 
  60.       try: 
  61.         os.system('shutdown -s -t %d' % d) 
  62.         self.text.setText("電腦將在%s關(guān)機(jī)!" % datetime) 
  63.       except
  64.         self.text.setText("設(shè)置失??!"
  65.     else
  66.       self.text.setText("日期設(shè)置錯(cuò)誤!"
  67.  
  68.   def cleart(self,page): 
  69.     try: 
  70.       os.system('shutdown -a'
  71.       self.text.setText("已經(jīng)清除關(guān)機(jī)任務(wù)!"
  72.     except
  73.       self.text.setText("清除任務(wù)失敗!")   
  74.  
  75. if __name__=='__main__'
  76.   app = QtWidgets.QApplication(sys.argv) 
  77.   page = QtWidgets.QWidget() 
  78.   ui = guanji() 
  79.   ui.pageShow(page) 
  80.   sys.exit(app.exec_()) 

 

責(zé)任編輯:未麗燕 來(lái)源: 今日頭條
相關(guān)推薦

2022-06-17 07:57:53

攔截包裝軟鏈接

2024-02-20 08:51:56

PythonFlask工具

2010-03-26 14:49:04

Python腳本

2021-01-14 22:17:09

PythonLinux工具

2022-03-24 14:42:19

Python編程語(yǔ)言

2015-09-08 13:47:24

C#編寫自動(dòng)關(guān)機(jī)

2010-03-23 10:29:28

Python程序編譯轉(zhuǎn)

2023-04-07 15:45:13

Emojicode開源編碼語(yǔ)言

2021-05-19 17:25:12

Pythonexe命令

2009-06-10 20:44:18

netbeans 打包JAR文件

2019-09-17 14:53:39

2025-03-04 07:40:00

Python模塊開發(fā)

2009-09-04 09:36:17

Java調(diào)用

2022-09-02 14:37:46

復(fù)制粘貼Pythonexe

2021-05-08 12:30:03

Pythonexe代碼

2021-05-07 21:53:44

Python 程序pyinstaller

2020-02-06 10:10:24

python程序代碼

2024-03-08 09:34:35

JpackageJarJava

2013-06-13 14:05:51

關(guān)機(jī)程序

2024-04-26 08:34:44

Python編程語(yǔ)言PyInstalle
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)