0%

第一次尝试python的gui

今天第一次尝试了python的gui,不得不说python的库真的很强大。别的不说先上效果图吧。 YsY4Mt.jpg
YsYqiQ.jpg 直接用tkinter库的Tk方法创建了窗口,用Label方法创建了文本框按键,用ttk.combobox创建了下拉多选菜单,最后用Frame方法创建框架。程序的核心是从一个星座运势网站根据星座爬取运势。虽然不是很复杂程序,不过能写出来我还是很开心,希望以后能更新更优质的内容吧!下面是源码,有写的不好的地方欢迎大家指正,互相学习共同进步!

import tkinter as tk import tkinter.messagebox import tkinter.ttk import requests import re

#定义弹窗函数,显示占卜结果 def show_msg(name, contant): tk.messagebox.showinfo("占卜结果","{},".format(name) + contant)

#定义一个函数,传入星座,返回占卜结果 def get_contant(cons): url_root = 'https://www.xzw.com/fortune/' cons_dict = {'白羊座':'Aries','金牛座':'Taurus','双子座':':Gemini','巨蟹座':'Cancer ',
'狮子座':'Leo', '处女座':'Virgo', '天秤座':'Libra', '天蝎座':'Scorpio', '射手座':'Sagittarius', '摩羯座':'Capricorn', '水瓶座':'Aquarius', '双鱼座':'Pisces'} url = url_root + cons_dict[cons] r = requests.get(url) html = r.text return re.findall('综合运势(.*?)', html)[0]

#创建窗口 app = tk.Tk() app.title('神奇的占卜软件') app.geometry('300x250')

#创建文本框 f1 = tk.Frame(master=app, height=10) lb = tk.Label(app, text='请输入姓名', width=20, height=4, fg='red') lb.pack() f1.pack(pady=5)

#创建输入框 f2 = tk.Frame(master=app, height=10) text = tk.Entry(app, width=10) text.pack() f2.pack(pady=5)

#创建下拉多选菜单 f3 = tk.Frame(master=app, height=10) cb = tkinter.ttk.Combobox(app, width=10) cb['values'] = ('白羊座','金牛座','双子座','巨蟹座','狮子座','处女座','天秤座','天蝎座','射手座','摩羯座','水平座','双鱼座') cb.pack() f3.pack(pady=5)

#创建开始按钮 f4 = tk.Frame(master=app, height=10) bt = tk.Button(text="开始占卜", width=10, bg='pink', command=lambda:show_msg(text.get(), get_contant(cb.get()))) bt.pack() f4.pack(pady=5)

#窗口主循环 tk.mainloop()