1. 程式人生 > 其它 >tkinter滾動條

tkinter滾動條

from tkinter import *
import requests

window = Tk()
window.geometry('1000x600+300+100')
window.title('資料採集')

frame = Frame(window)
frame.pack()

Label(frame,text='請輸入網站地址:',font=('黑體',12)).pack()

var = StringVar()
var.set('https://www.cnblogs.com/zhangyh-blog/p/15940602.html')

address = Entry(frame,width=70,textvariable=var)
address.pack(pady=5)


# 建立一個滾動條
scroll_bar = Scrollbar(frame)
scroll_bar.pack(side=RIGHT,fill=Y)


txt = Text(frame,width=120,height=30)
txt.config(yscrollcommand=scroll_bar.set)  # 在Text元件中使用這個滾動條
txt.pack()
scroll_bar.config(command=txt.yview)  # 讓這個滾動條發揮作用


def submit():
    addr = address.get()
    res = requests.get(addr).text
    global txt
    txt.insert(INSERT,res)

def delete():
    global txt
    data = txt.get(1.0,END)

    if len(data) > 1:
        r = messagebox.askokcancel('提示','確定要清空全部資料嗎?')
        if r == True:
            txt.delete(1.0,END)
        else:
            pass
    else:
        messagebox.showwarning('提示','資料為空,無需清空')


Button(frame,text='開始獲取',command=submit).pack()
Button(frame,text='清空資料',command=delete).pack()

from tkinter import messagebox
def save():
    global txt
    result = txt.get(1.0,END)
    with open('result.html','w',encoding='utf-8') as f:
        f.write(result)
    messagebox.showinfo('提示','已經將結果儲存為 “result.html”檔案,請前往檢視')

Button(frame,text='儲存',command=save).pack()


window.mainloop()