Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะเพิ่มความเร็วในการตอบสนองการเลื่อนเมื่อแสดงข้อความจำนวนมากใน Tkinter ได้อย่างไร?


Tkinter สามารถใช้เพื่อแสดงไฟล์ข้อความและโหลดลงบนผ้าใบ นอกจากนี้ ไฟล์ข้อความยังสามารถใช้เพื่อวัตถุประสงค์อื่น เช่น การจัดการข้อมูล การดึงข้อมูล และการแสดงข้อมูลเพื่อการใช้งานอื่นๆ

สมมติว่าเราต้องอ่านข้อความในไฟล์ผ้าใบ tkinter ซึ่งมีข้อความค้นหามากกว่า 10,000 บรรทัด อาจใช้เวลานานในการค้นหาข้อความค้นหาเฉพาะในแคนวาสหลังจากโหลดไฟล์ข้อความ ในการจัดการไฟล์ข้อความขนาดใหญ่เช่นนี้ เราสามารถเร่งการตอบสนองของไฟล์โดยเพิ่มแถบเลื่อน Y เข้าไป เราจะสร้างวิดเจ็ตตัวควบคุมด้านข้างโดยใช้ วิดเจ็ตแถบเลื่อน .

ขั้นแรก เราจะเปิดและอ่านไฟล์โดยใช้วิธีการ "เปิด" จากนั้นเราจะเพิ่มแถบเลื่อนในแกน Y ของเฟรม tkinter ในการเพิ่มแถบเลื่อนในเฟรม เราสามารถมีตัวอย่างได้โดยใช้ แถบเลื่อน วิดเจ็ต ใช้อินสแตนซ์หน้าต่างเป็นพารามิเตอร์และกำหนดคุณสมบัติอื่นของแถบเลื่อน (ด้านข้างของแถบเลื่อน แกน)

ตัวอย่าง

#Importing the tkinter library in the notebook

from tkinter import *
#Create an instance of the tkinter frame
win = Tk()
win.geometry(“700x300”)

#Create instance of Scrollbar object and define the property of the scrollbar
scrollbar = Scrollbar(win)
scrollbar.pack(side=RIGHT, fill=Y)
listbox = Listbox(win, height=300, width=100)
listbox.pack()

#Open and read the file using open method
file = open('file.txt', 'r').readlines()

for i in file:
   listbox.insert(END, i)

#Define the property of the widget
listbox.config(yscrollcommand=scrollbar.set)
scrollbar.config(command=listbox.yview)

#display the canvas until the END button is not pressed.
mainloop()

ผลลัพธ์

การเรียกใช้ข้อมูลโค้ดด้านบนจะเป็นการเปิดผ้าใบโดยมีแถบเลื่อนอยู่ด้านข้าง

จะเพิ่มความเร็วในการตอบสนองการเลื่อนเมื่อแสดงข้อความจำนวนมากใน Tkinter ได้อย่างไร?