【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]导语 ​ 哈喽!大家好,我是木木子。 无论家用电脑还是公司的电脑,定时开关机都是一个非常实用的功能,只是一般都不太受关注。定时关机不仅能延长电 脑的使用寿命,还能节约超多的电费呢~哈哈哈哈​ 害~这不

导语

图片

哈喽!大家好,我是木木子。

无论家用电脑还是公司的电脑,定时开关机都是一个非常实用的功能,只是一般都不太受关注。定时关机不仅能延长电

脑的使用寿命,还能节约超多的电费呢~哈哈哈哈【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

害~这不,周天休假一天,但是公司的电脑大部分的小伙伴儿就开了一天,有时候放长假的时候电脑一开就是几天。

这不?隔壁的小姐姐已经被领导发现了,最后的最后这个事情就落到我手里了,开发一个能定时关机的源码项目供大家

使用,并互相提醒每个人一定要下班关机!

定时开关机是个非常简单又实用的功能,跟着本文用不了10分钟你就能学会如何进行操作了哈~

​​​

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

图片

正文

本文介绍了:普通人关机的习惯方式、以及程序员关机的方式哈!

并且程序员关机附了2份代码喜欢tkinter的就用tk版本的,喜欢pyqt5的就用这版本的。两个版本大家自己爱用那个用那个哈~

一、普通人关机

0)优雅的关机

图片

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

1)快捷键关机

使用快捷键关机相信是大家比较常用的方法了吧?也是最简单方便的方法。

按下快捷键【Alt】+【F4】弹出功能对话框,实现快速关机,又快又准效率极高。

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

2)任务管理器关机

这个方法和上一个快捷键关机的方法有着异曲同工之妙,按下快捷键【Alt】+【Ctrl】+【Delete】,打开任务管理

器,右下方有个圆形关机按钮,点击即可关机。

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

3)设置关机时间

这个方法可以实现定时关机,算好想要关机的时间,设置完成后电脑到点就会自动关机。再也不用因为电脑关机更新而

等个半天了。按下快捷键【win】+【R】,在运行对话框内输入《at20:00 shutdown-s》后点击确定,系统就会在晚

上8点准时关机。这个方法可以在大家确定能够关机时间的情况下使用还是非常方便的。

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

4)鼠标滑动关机

在电脑桌面位置创建一个快捷方式,在出现的对话框内输入“slidetoshutdown”后点下一步。

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

点击完成即可。

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

此时电脑桌面上就多了一个快捷方式,想要关机时双击该快捷方式,就会出现以下提示,滑动就可以关闭电脑了。

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

二、程序员关机

嘿嘿虽然确实正常人开关机上面的更方便快速哈!但是源码打包成exe点开更方便啦尤其是在电脑需要几个小时之后

关机的,需要先让电脑自动完成任务再关机滴呐这个还蛮方便的也许,应该更方便.jpg 强行解释的我2333~

1)Pyqt5界面化小程序

1.1  附源码项目

# -*—coding:utf-8 -*-
import sys
import os      # Python执行系统命令方法所用到的包
from PyQt5 import QtCore,QtGui,QtWidgets 
 
class Ui_shut(object):   #类 继承object类
	flag = True
	def setupUi(self,shut):  #方法
	    #设置窗体的大小
		shut.setObjectName("shut")
		shut.resize(420,180)             
		shut.setFixedSize(420,180)
 
		self.label = QtWidgets.QLabel(shut)
		self.label.setGeometry(QtCore.QRect(40,50,41,51)) #标签的位置
		self.label.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.label.setObjectName("label")
 
		self.lineEdit = QtWidgets.QLineEdit(shut)
		self.lineEdit.setGeometry(QtCore.QRect(70, 50, 71, 41))
		self.lineEdit.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.lineEdit.setObjectName("lineEdit")
 
		self.label_2 = QtWidgets.QLabel(shut)
		self.label_2.setGeometry(QtCore.QRect(150, 60, 31, 31))
		self.label_2.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.label_2.setObjectName("label_2")
 
		self.lineEdit_2 = QtWidgets.QLineEdit(shut)
		self.lineEdit_2.setGeometry(QtCore.QRect(180, 50, 71, 41))
		self.lineEdit_2.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.lineEdit_2.setObjectName("lineEdit_2")
 
		self.label_3 = QtWidgets.QLabel(shut)
		self.label_3.setGeometry(QtCore.QRect(260, 60, 31, 31))
		self.label_3.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.label_3.setObjectName("label_3")
 
		self.pushButton = QtWidgets.QPushButton(shut,clicked=self.sd)  #为pushButton添加监听事件click。
		self.pushButton.setGeometry(QtCore.QRect(290, 50, 101, 41))
		self.pushButton.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.pushButton.setObjectName("pushButton")
 
		self.label_4 = QtWidgets.QLabel(shut)
		self.label_4.setGeometry(QtCore.QRect(0, 120, 500, 31))
		self.label_4.setFont(QtGui.QFont("Roman times",10,QtGui.QFont.Bold))
		self.label_4.setObjectName("label_4")
 
		self.retranslateUi(shut)
		QtCore.QMetaObject.connectSlotsByName(shut) #connectSlotsByName是一个QMetaObject类里的静态函数,其作用是用来将QObject * o里的子QObject的某些信号按照其objectName连接到o的槽上。
        
 
	def retranslateUi(self,shut):
		_translate = QtCore.QCoreApplication.translate
		shut.setWindowTitle(_translate("shut", "Windows定时关机器"))
		self.label.setText(_translate("shut", "在:"))
		self.label_2.setText(_translate("shut", "时"))
		self.label_3.setText(_translate("shut", "分"))
		self.label_4.setText(_translate("shut", " 请输入关机时间"))
		self.pushButton.setText(_translate("shut", "设置"))
	def sd(self,shut):        #self.sd为触发该事件后,需要执行的操作。
		h = self.lineEdit.text()
		m = self.lineEdit_2.text()
		if self.flag:
			self.flag = False
			try:                     #捕获所有异常
				os.popen('at'+ h + ':' + m + ' shutdown -s') #python执行cmd命令的方法
				self.label_4.setText(' 设置成功! 系统将关机在今天 '+h+':'+m)
				self.pushButton.setText('移除')
				self.lineEdit.clear()
				self.lineEdit_2.clear()
			except:
				self.label_4.setText('Something is wrong~')
		else:
			self.flag = True
			try:
				os.popen('at /delete /yes')
				self.label_4.setText('成功,全部移除')
				self.pushButton.setText('Set')
				self.lineEdit.clear()
				self.lineEdit_2.clear()
			except:
				self.label_4.setText('Something is wrong')

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]1.2  效果展示

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

​2)Tkinter界面化小程序

2.1  附源码项目

from tkinter import ttk
import os
import tkinter.messagebox as message_box

windows = tkinter.Tk()
windows.title("Python定时关机")
# window 居中
windows.update()  # update window ,must do
curWidth = 280  # get current width
curHeight = windows.winfo_reqheight()  # get current height
scnWidth, scnHeight = windows.maxsize()  # get screen width and height
# now generate configuration information
config = '%dx%d+%d+%d' % (curWidth, curHeight,
                          (scnWidth - curWidth) / 2, (scnHeight - curHeight) / 2)
windows.geometry(config)
# root 容器
root = ttk.LabelFrame(windows, text="关机命令")
root.grid(column=0, row=0, padx=15, pady=15)
# 提醒文本
tkinter.Label(root, text="输入时间").grid(column=0, row=0, sticky=tkinter.W)
tkinter.Label(root, text="选择").grid(column=1, row=0)

# 存储输入的值
time = tkinter.StringVar()
unit = tkinter.StringVar()
# 输入框
time_edit = tkinter.Entry(root, width=10, textvariable=time)
time_edit.grid(column=0, row=1, padx=4, sticky=tkinter.W)
time_edit.focus()
# 下拉单位选择
unit_arr = ('时', '分', '秒')
unit_chosen = ttk.Combobox(root, width=6, textvariable=unit, state='readonly')
unit_chosen['values'] = unit_arr
unit_chosen.grid(column=1, row=1)
unit_chosen.current(0)


def change_edit(to_time):
    time_edit.delete(0, 10)
    time_edit.insert(0, to_time)
    unit_chosen.current(1)


# start
def start():
    if time.get() and unit.get():
        message_box.showwarning("选择完毕", "你的电脑将在多少 %s %s" % (time.get(), unit.get()))
        # shutdown 的秒数
        count_down_second = int(time.get())
        if unit.get() == 'hour':
            count_down_second *= 3600
        elif unit.get() == 'minute':
            count_down_second *= 60
        # execute
        os.system("shutdown -s -t %s" % count_down_second)
        windows.quit()


# cancel
def cancel():
    os.system("shutdown -a")
    windows.quit()


# start 按钮
start_action = tkinter.Button(root, text="START", command=start)
start_action.grid(column=2, row=1)
# 文本
tip_label = tkinter.Label(root, text="倒计时关机")
tip_label.grid(row=2, column=0, pady=2)
# 快捷选择时间
fram = tkinter.Frame(root)
fram.grid(row=3, column=0, columnspan=3)
# 常用的时间
for i in range(2, 7):
    button = tkinter.Button(fram, text=str(i * 15) + "min", command=lambda x=i: change_edit(str(x * 15)))
    button.grid(row=0, column=i - 2, padx=2, pady=2, sticky=tkinter.W)
# cancel 按钮
cancel_action = tkinter.Button(root, text="CANCEL", command=lambda: cancel())
cancel_action.grid(row=4, column=1, pady=10, sticky=tkinter.W)

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]2.2  效果展示

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

总结

好啦,定时关机的小项目就over了。以后记得需要定时关机的就用这款代码哈哈哈~想什么时候关机就什么时候关机嘛

⛳完整的免费源码领取处:

如需完整的项目源码+素材源码基地见:#私信小编06#或者点击蓝色文字添加即可获取免费的福利!

你们的支持是我最大的动力!!记得三连哦~mua 欢迎大家阅读往期的文章哦~

⛳新增解答方面——

如果在学习Python方面遇到问题、有时间会给大家解答滴啦!需要自行添加哈!

放WX号如下:apython68

🏆文章汇总——

Python—2021 |已有文章汇总 | 持续更新,直接看这篇就够了~

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

【普通人VS程序员】电脑竟然还可以这样关机,神操作!建议收藏![亲测有效]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/12761.html

(0)

相关推荐

  • Python可变参数详解

    Python可变参数详解在Python编程中,一个函数可以通过接收和处理参数来实现它的功能。函数参数有两种类型,即默认参数和可变参数,在本文中我们将重点解析可变参数。可变参数指在调用函数时,可以传入任意数量的参数,这些参数在函数定义中不需要被明确指定,这个特性使得函数的使用更加灵活。在Python中,可变参数主要有两种类型:*args和**kwargs。

    2024-05-05
    71
  • [TcaplusDB知识库]TcaplusDB的高可用性和数据安全性介绍「终于解决」

    [TcaplusDB知识库]TcaplusDB的高可用性和数据安全性介绍「终于解决」随着信息化的发展,数据库已经是企业正常运营必不可少的工具,企业的所有数据都存储在数据库上,因此可以说数据库的可靠与否关系着企业的生死存亡。 因此,数据的保护和备份是数据库业务的重中之重,系统的可用性…

    2023-04-10
    151
  • 显卡排行天梯图2021(显卡功耗天梯图2021)

    显卡排行天梯图2021(显卡功耗天梯图2021)

    2023-09-29
    151
  • 1.5.5 HDFS读写解析-hadoop[亲测有效]

    1.5.5 HDFS读写解析-hadoop[亲测有效]1.5.5 HDFS读写解析 1.5.5.1 HDFS读数据流程 客户端通过Distributed FileSystem向NameNode请求下载文件,NameNode通过查询元数据, 找到文件块所在

    2023-06-19
    182
  • Python爬虫工具

    Python爬虫工具随着互联网的不断发展,爬虫技术成为了互联网领域一个非常热门的技术。而作为目前市面上最为流行和使用最广泛的编程语言之一,Python在爬虫领域也具有很大的优势,并且有着非常丰富的开源爬虫工具。本篇文章将从多个方面,详细介绍Python爬虫工具的有关知识。

    2024-07-05
    50
  • framework2.0(framework是什么意思)

    framework2.0(framework是什么意思)

    2023-10-06
    135
  • gitming_git打tag流程

    gitming_git打tag流程背景 ​ 目前团队比较小,在协作开发中,对git的操作并没有一套规范.以至于我们在开发中,分支命名比较随意,测试/上线分支也没有明确的规范.提交的message也是随心所欲.以至于在合并分支部署时经常

    2023-08-04
    130
  • 用Navicat创建MySQL存储过程

    用Navicat创建MySQL存储过程1.使用Navicat for MySQL工具创建存储过程步骤: 点击函数右键新建: 点击下一步 最后点击完成以后弹出以下界面 在此处编写自己的sql语句,编写完成以后点击保存 最后测试一下自己的存…

    2023-03-10
    155

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注