python看图片猜价格游戏,frame 和PhotoImage的使用



import tkinter.messagebox
import tkinter
import random

window = tkinter.Tk()

window.geometry('800x400')

window.title('猜数字游戏')

good_price = random.randint(10, 100)
input_price = random.randint(1, 100)


def sumit():
    global good_price
    if entry.get() == "" or entry.get().isdigit() == False:
        message_info.set("价格不合理")
        tkinter.messagebox.askquestion(title='警告', message='输入不合法')
        if entry.get().isdigit() == False:
            entry.delete(first=0, last=len(entry.get()))
    else:
        quess_price = int(entry.get())
        if 10 <= quess_price <= 100 or entry.get().isspace():
            if quess_price > good_price:
                message_info.set("不好意思,您猜的有点大了!")
                entry.delete(first=0, last=len(entry.get()))
            elif quess_price < good_price:
                message_info.set("不好意思,您猜的有点小了!")
                entry.delete(first=0, last=len(entry.get()))
            else:
                message_info.set("恭喜你,猜对了,祝贺成功!1")
                price.set(f'{good_price}')
                entry.delete(first=0, last=len(entry.get()))
                askok = tkinter.messagebox.askokcancel(title="温馨提示", message="是不继续玩!")
                if askok == True:
                    price.set("***")
                    message_info.set("请输入你猜的价格")
                    good_price = random.randint(10, 100)
                    entry.delete(first=0, last=len(entry.get()))
        else:
            message_info.set("价格不合理,请重新输入")
            tkinter.messagebox.askquestion(title='警告', message='输入不合法,请重新输入')
            entry.delete(first=0, last=len(entry.get()))


# #-------------界面------------------

lable_price_text = tkinter.Label(window, text='当前商品的价格是:', font=('楷体', 15))
lable_price_text.place(x=10, y=10, width=300, height=40)

price = tkinter.StringVar(value='***')

lable_price = tkinter.Label(window, textvariable=price, font=('楷体', 15))
lable_price.place(x=300, y=10, width=80, height=40)

lable_entry_text = tkinter.Label(window, text='请输入10-100的数字:', font=('楷体', 15))
lable_entry_text.place(x=10, y=60, width=300, height=40)

lable_img_text = tkinter.Label(window, text='请看下边的图片:', font=('楷体', 15))
lable_img_text.place(x=10, y=110, width=300, height=40)

entry = tkinter.Entry(window, show="")
entry.place(x=300, y=60, width=80, height=40)

img = tkinter.PhotoImage(file="img.png")

lable_dec_pic = tkinter.Label(window,image=img)
lable_dec_pic.place(x=10, y=160, width=300, height=200)

submit_btn = tkinter.Button(window, text="提交", command=sumit)
submit_btn.place(x=400, y=60, width=80, height=40)

frame = tkinter.Frame(window,bd=2,relief="sunken")
frame.place(x=340, y=170, width=300, height=200)
message_lable = tkinter.Label(window, text='提示:', font=('楷体', 15))
message_lable.place(x=350, y=180, width=100, height=40)
message_info = tkinter.StringVar(value='请输入您猜的价格')

message_m = tkinter.Label(window, textvariable=message_info, font=('楷体', 15))
message_m.place(x=350, y=210, width=280, height=80)

window.mainloop()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青龙摄影

你的鼓励是我创作的动力,支持下

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值