python 테두리 없 는 진행 바 의 인 스 턴 스 코드 구현
본 고 는 python 으로 테두리 없 는 진행 바 를 실현 하고 이 를 바탕 으로 그림 을 추가 하여 특정한 프로그램 에서 애니메이션 을 불 러 오 는 효 과 를 나타 내 는 데 목적 을 둔다.
실현 설명
1.진도 바 부분 은 tkinter 의 캔버스 구성 요 소 를 사용 합 니 다.
2.PYQT 5 에 사 용 된 QMainWindow,QApplication
(수준 이 제한 되 어 있 기 때문에 두 개의 서로 다른 창고 로 실현 할 수 밖 에 없다)
소스 코드
import sys
from PyQt5.QtCore import Qt
from PyQt5.QtWidgets import QMainWindow, QApplication
import time
from tkinter import *
class MainWIndow(QMainWindow):
def __init__(self, parent=None):
super(MainWIndow, self).__init__(parent)
self.resize(500, 667)
self.setWindowTitle(' copyright@2020 1.2.1')
#
self.setWindowFlags(Qt.FramelessWindowHint)
# , , ,
self.setWindowFlags(Qt.SubWindow)
self.setObjectName("MainWindow")
self.setStyleSheet("#MainWindow{border-image:url(images/python.jpg);}")
if __name__ == '__main__':
app = QApplication(sys.argv)
win = MainWIndow()
win.show()
#
def change_schedule(now_schedule,all_schedule):
canvas.coords(fill_rec, (5, 5, 6 + (now_schedule/all_schedule)*100, 25))
root.update()
#
x.set(str(round(now_schedule/all_schedule*100,2)) + '%')
if round(now_schedule/all_schedule*100,2) == 100.00:
x.set(" ")
#
root = Tk()
# , , xy
root.geometry("480x30+720+830")
#
frame = Frame(root).grid(row = 0,column = 0)
#
canvas = Canvas(frame,bg = "white")
canvas.grid(row = 0,column = 0)
x = StringVar()
#
root.overrideredirect(True)
# 0,
canvas.configure(highlightthickness=0)
#
# ,
out_rec = canvas.create_rectangle(5,5,480,25,outline = "red",width = 1)
fill_rec = canvas.create_rectangle(5,5,5,25,outline = "",width = 0,fill = "blue")
Label(frame,textvariable = x).grid(row = 0,column = 1)
for i in range(480):
time.sleep(0.01)
change_schedule(i,99)
#root.mainloop()
캡 처 실행
여기 서 python 이 경계선 없 는 진도 바 를 실현 하 는 인 스 턴 스 코드 에 관 한 글 은 여기까지 소개 되 었 습 니 다.더 많은 python 경계선 없 는 진도 바 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 지원 을 바 랍 니 다!