Python+drawpad實(shí)現(xiàn)CPU監(jiān)控小程序
CPU活動(dòng)展示
導(dǎo)入模塊,創(chuàng)建畫板,創(chuàng)建畫筆進(jìn)行繪畫出cpu的數(shù)據(jù),一定要用線程,負(fù)責(zé)會(huì)卡住哦
實(shí)現(xiàn)代碼
import tkinter from tkinter import * import psutil import time import win32api,win32con,win32gui from threading import Thread root_Terminal = Tk() root_Terminal.title('賤工坊-CPU活動(dòng)數(shù)據(jù)') # 窗口的大小及頁(yè)面的顯示位置 root_Terminal.geometry( f"600x100+{(win32api.GetSystemMetrics(win32con.SM_CXSCREEN) - 600) // 2}+{(win32api.GetSystemMetrics(win32con.SM_CYSCREEN) - 100) // 2}") root_Terminal.resizable(False, False) # 固定頁(yè)面不可放大縮小 root_Terminal.configure(background='#333333') # 新畫框 drawpad = Canvas(root_Terminal, width=600, height=400, bg='#333333') drawpad.place(x=-2,y=0) # 文本框 text_1 = tkinter.Text(root_Terminal, width=14, heigh=2, bg='#333333', undo=True, fg='#ffffff', font=("黑體",12),borderwidth=0) text_1.place(x=20, y=20) text_1.insert(tkinter.INSERT, 'CPU使用率:\n0%') text_1.config(state=DISABLED) # 禁用狀態(tài) def CPU(): # CPU展示數(shù)據(jù)框架 -1 畫出長(zhǎng)方形CPU框架 drawpad.create_polygon(150, 0, 600, 0, 600, 62, 150, 62, fill='#232323') # CPU框架 左上 右上 右下 左下 H_CPU = [590] # CPU默認(rèn)值 S_CPU = [60] # CPU默認(rèn)值 while True: A_CPU = psutil.cpu_percent(1) # CPU # CPU展示數(shù)據(jù)框架 -2 用來(lái)遮蓋上一次的數(shù)據(jù) 防止重疊在一起難看 drawpad.create_polygon(150, 0, 600, 0, 600, 62, 150, 62, fill='#232323') # CPU框架 左上 右上 右下 左下 for a in range(len(H_CPU)-1): # 畫圖CPU 數(shù)據(jù) if len(H_CPU) == 1: # 值為1則表示剛開始暫無(wú)數(shù)據(jù) drawpad.create_line(H_CPU[a], S_CPU[a], H_CPU[a] + 10, 60-A_CPU*0.6, fill='#00e500') # 使用畫筆畫出折線 else:drawpad.create_line(H_CPU[a], S_CPU[a], H_CPU[a] + 10, S_CPU[a+1], fill='#00e500') # 使用畫筆畫出折線 text_1.config(state=NORMAL) # 啟動(dòng)狀態(tài) # 清空 text_1.delete(1.0, END) text_1.insert(tkinter.INSERT, f'CPU使用率:\n{A_CPU}%') text_1.config(state=DISABLED) # 禁用狀態(tài) H_CPU = H_CPU + [600] J = [] # 創(chuàng)建臨時(shí)列表裝飾器 for sdss in H_CPU: J = J + [sdss - 10] H_CPU = J # 替換列表數(shù)據(jù) S_CPU = S_CPU + [60 - A_CPU*0.6] # 刪除列表第一個(gè)數(shù)據(jù) if len(H_CPU) == 46: # 不能超過(guò)46次 # 刪除列表元素 防止數(shù)據(jù)超出 del H_CPU[0] del S_CPU[0] # 創(chuàng)建線程并啟動(dòng) Thread(target=CPU).start() root_Terminal.mainloop() # 運(yùn)行
到此這篇關(guān)于Python+drawpad實(shí)現(xiàn)CPU監(jiān)控小程序的文章就介紹到這了,更多相關(guān)Python CPU監(jiān)控內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python map比f(wàn)or循環(huán)快在哪
這篇文章主要介紹了python 為什么map比f(wàn)or循環(huán)快,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-09-09Python輸出漢字字庫(kù)及將文字轉(zhuǎn)換為圖片的方法
這篇文章主要介紹了Python輸出漢字字庫(kù)及將文字轉(zhuǎn)換為圖片的方法,分別用到了codecs模塊和pygame模塊,需要的朋友可以參考下2016-06-06巧妙使用python?opencv庫(kù)玩轉(zhuǎn)視頻幀率
這篇文章主要介紹了巧妙使用python?opencv庫(kù)玩轉(zhuǎn)視頻幀率的教程示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-04-04Selenium獲取登錄Cookies并添加Cookies自動(dòng)登錄的方法
這篇文章主要介紹了Selenium獲取登錄Cookies并添加Cookies自動(dòng)登錄的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Python 實(shí)現(xiàn)將大圖切片成小圖,將小圖組合成大圖的例子
這篇文章主要介紹了Python 實(shí)現(xiàn)將大圖切片成小圖,將小圖組合成大圖的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03用python實(shí)現(xiàn)讀取xlsx表格操作
大家好,本篇文章主要講的是用python實(shí)現(xiàn)讀取xlsx表格操作,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-01-01Python把csv數(shù)據(jù)寫入list和字典類型的變量腳本方法
今天小編就為大家分享一篇Python把csv數(shù)據(jù)寫入list和字典類型的變量腳本方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-06-06matplotlib在python上繪制3D散點(diǎn)圖實(shí)例詳解
這篇文章主要介紹了matplotlib在python上繪制3D散點(diǎn)圖實(shí)例詳解,首先介紹了官網(wǎng)的實(shí)例,然后分享了本文簡(jiǎn)單代碼示例,具有一定借鑒價(jià)值,需要的朋友可以了解下。2017-12-12