First program with GUI: Roll a dice

This times is to record a memorable day for me to create a program which look closer to what will be usable in real life.

Code

This program is to act like a 6-face dice, when you press the button, a number will be randomly picked from 1 to 6 and display it

<span>import</span> <span>random</span>
<span>import</span> <span>tkinter</span> <span>as</span> <span>tk</span>
<span>def</span> <span>random_a_num</span><span>():</span>
<span>value</span> <span>=</span> <span>int</span><span>(</span><span>random</span><span>.</span><span>randrange</span><span>(</span><span>1</span><span>,</span> <span>7</span><span>))</span>
<span>lbl_value</span><span>[</span><span>"</span><span>text</span><span>"</span><span>]</span> <span>=</span> <span>f</span><span>"</span><span>{</span><span>value</span><span>}</span><span>"</span>
<span>window</span> <span>=</span> <span>tk</span><span>.</span><span>Tk</span><span>()</span>
<span>window</span><span>.</span><span>rowconfigure</span><span>([</span><span>0</span><span>,</span> <span>1</span><span>],</span> <span>minsize</span><span>=</span><span>50</span><span>,</span> <span>weight</span><span>=</span><span>1</span><span>)</span>
<span>window</span><span>.</span><span>columnconfigure</span><span>(</span><span>0</span><span>,</span> <span>minsize</span><span>=</span><span>50</span><span>,</span> <span>weight</span><span>=</span><span>1</span><span>)</span>
<span>btn_roll</span> <span>=</span> <span>tk</span><span>.</span><span>Button</span><span>(</span><span>master</span><span>=</span><span>window</span><span>,</span> <span>text</span><span>=</span><span>"</span><span>Roll</span><span>"</span><span>,</span> <span>command</span><span>=</span><span>random_a_num</span><span>)</span>
<span>btn_roll</span><span>.</span><span>grid</span><span>(</span><span>row</span><span>=</span><span>0</span><span>,</span> <span>column</span><span>=</span><span>0</span><span>,</span> <span>sticky</span><span>=</span><span>"</span><span>nsew</span><span>"</span><span>)</span>
<span>lbl_value</span> <span>=</span> <span>tk</span><span>.</span><span>Label</span><span>(</span><span>master</span><span>=</span><span>window</span><span>,</span> <span>text</span><span>=</span><span>"</span><span>0</span><span>"</span><span>)</span>
<span>lbl_value</span><span>.</span><span>grid</span><span>(</span><span>row</span><span>=</span><span>1</span><span>,</span> <span>column</span><span>=</span><span>0</span><span>,</span> <span>sticky</span><span>=</span><span>"</span><span>nsew</span><span>"</span><span>)</span>
<span>window</span><span>.</span><span>mainloop</span><span>()</span>
<span>import</span> <span>random</span>
<span>import</span> <span>tkinter</span> <span>as</span> <span>tk</span>


<span>def</span> <span>random_a_num</span><span>():</span>
    <span>value</span> <span>=</span> <span>int</span><span>(</span><span>random</span><span>.</span><span>randrange</span><span>(</span><span>1</span><span>,</span> <span>7</span><span>))</span>
    <span>lbl_value</span><span>[</span><span>"</span><span>text</span><span>"</span><span>]</span> <span>=</span> <span>f</span><span>"</span><span>{</span><span>value</span><span>}</span><span>"</span>


<span>window</span> <span>=</span> <span>tk</span><span>.</span><span>Tk</span><span>()</span>

<span>window</span><span>.</span><span>rowconfigure</span><span>([</span><span>0</span><span>,</span> <span>1</span><span>],</span> <span>minsize</span><span>=</span><span>50</span><span>,</span> <span>weight</span><span>=</span><span>1</span><span>)</span>
<span>window</span><span>.</span><span>columnconfigure</span><span>(</span><span>0</span><span>,</span> <span>minsize</span><span>=</span><span>50</span><span>,</span> <span>weight</span><span>=</span><span>1</span><span>)</span>

<span>btn_roll</span> <span>=</span> <span>tk</span><span>.</span><span>Button</span><span>(</span><span>master</span><span>=</span><span>window</span><span>,</span> <span>text</span><span>=</span><span>"</span><span>Roll</span><span>"</span><span>,</span> <span>command</span><span>=</span><span>random_a_num</span><span>)</span>
<span>btn_roll</span><span>.</span><span>grid</span><span>(</span><span>row</span><span>=</span><span>0</span><span>,</span> <span>column</span><span>=</span><span>0</span><span>,</span> <span>sticky</span><span>=</span><span>"</span><span>nsew</span><span>"</span><span>)</span>

<span>lbl_value</span> <span>=</span> <span>tk</span><span>.</span><span>Label</span><span>(</span><span>master</span><span>=</span><span>window</span><span>,</span> <span>text</span><span>=</span><span>"</span><span>0</span><span>"</span><span>)</span>
<span>lbl_value</span><span>.</span><span>grid</span><span>(</span><span>row</span><span>=</span><span>1</span><span>,</span> <span>column</span><span>=</span><span>0</span><span>,</span> <span>sticky</span><span>=</span><span>"</span><span>nsew</span><span>"</span><span>)</span>

<span>window</span><span>.</span><span>mainloop</span><span>()</span>
import random import tkinter as tk def random_a_num(): value = int(random.randrange(1, 7)) lbl_value["text"] = f"{value}" window = tk.Tk() window.rowconfigure([0, 1], minsize=50, weight=1) window.columnconfigure(0, minsize=50, weight=1) btn_roll = tk.Button(master=window, text="Roll", command=random_a_num) btn_roll.grid(row=0, column=0, sticky="nsew") lbl_value = tk.Label(master=window, text="0") lbl_value.grid(row=1, column=0, sticky="nsew") window.mainloop()

Enter fullscreen mode Exit fullscreen mode

Reflection

I have learned a lot of useful basic syntax and concept in tkinter module. When the interface comes out and it works, I feel like my excitement on learning coding has increase a lot. More confidence to go on the learning path.

原文链接:First program with GUI: Roll a dice

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
You have to work very hard to seem effortless.
你必须十分努力,才能看上去毫不费劲
评论 抢沙发

请登录后发表评论

    暂无评论内容