Python 国家祝典の祝福

国民の祝福

一連の記事

シリアルナンバー 記事ディレクトリ 直接リンク
1 ロマンチックな 520 の告白コード https://want595.blog.csdn.net/article/details/130666881
2 全画面告白コード https://want595.blog.csdn.net/article/details/129794518
3 心臓の鼓動 https://want595.blog.csdn.net/article/details/129503123
4 浮かぶハート https://want595.blog.csdn.net/article/details/128808630
5 愛の光の波 https://want595.blog.csdn.net/article/details/132311588
6 流星群 https://want595.blog.csdn.net/article/details/129395465
7 カスミソウ https://want595.blog.csdn.net/article/details/129572082
8 花火大会 https://want595.blog.csdn.net/article/details/128746664
9 クリスマスツリー https://want595.blog.csdn.net/article/details/128213770
10 スノーフレークコード https://want595.blog.csdn.net/article/details/129038108
11 星空をシミュレートする https://want595.blog.csdn.net/article/details/129948882
12 誕生日ケーキ https://want595.blog.csdn.net/article/details/129694998
13 https://want595.blog.csdn.net/article/details/130350743
14 カラフルな風船 https://want595.blog.csdn.net/article/details/130950744
15 色とりどりの花 https://want595.blog.csdn.net/article/details/130897838
16 スプーフィングコード https://want595.blog.csdn.net/article/details/131274862
17 コードレイン https://want595.blog.csdn.net/article/details/132574687
18 ロマンチックな星空 https://want595.blog.csdn.net/article/details/132910075

序文

友人たち、建国記念日おめでとうございます!

Tkinter の入門

Tkinter は、デスクトップ GUI アプリケーションを作成するための Python 独自の GUI ライブラリです。Tk GUI ツールキットに基づいて開発されており、GUI フォームの作成、グラフィカル インターフェイスの描画、ユーザー イベントへの応答などに使用できます。

次に、Tkinterを使ってGUIアプリケーションを作成する方法を紹介します。まず、Tkinter ライブラリをインポートする必要があります。

import tkinter as tk

GUI アプリケーション作成の最初のステップは、ウィンドウ オブジェクトを作成することです。Tkinter では、Tk クラスを使用してトップレベルのウィンドウ オブジェクトを作成します。

root = tk.Tk()

このステートメントは、root という名前の最上位ウィンドウ オブジェクトを作成します。次に、ウィンドウ オブジェクトのタイトル、サイズ、位置、その他のプロパティを設定します。

root.title("My Application")
root.geometry("300x200")  # 窗口大小为300x200
root.resizable(False, False)  # 禁止用户调整窗口大小

上記のコードは、ウィンドウのタイトルを「My Application」、サイズを 300x200 に設定し、ユーザーがウィンドウのサイズを変更できないようにします。次に、ユーザー入力イベントを処理するためにウィンドウのイベント ループを開始する必要があります。

root.mainloop()

このステートメントはウィンドウのイベント ループを開始し、ウィンドウ オブジェクトが破棄されるのを防ぎます。

  • ラベルを作成する(ラベル)

GUI アプリケーションでは、ラベルはテキストや画像などのコンテンツを表示するためによく使用されるコントロールです。Tkinter では、Label クラスを使用してラベル コントロールを作成します。次のコードは、「Hello, World!」というテキストを含むラベルを作成します。

label = tk.Label(root, text="Hello, World!")
label.pack()

このコードは、label という名前のラベル オブジェクトを作成します。親ウィンドウは root で、テキストは「Hello, World!」です。Pack() メソッドは、ラベル コントロールを親ウィンドウに配置します。

  • 「作成」ボタン

ボタンも、イベントをトリガーするためによく使用されるコントロールです。Tkinter では、Button クラスを使用してボタン コントロールを作成します。次のコードは、親ウィンドウをルート、テキストを「Click Me!」として、button という名前のボタン オブジェクトを作成します。

def button_click():
    label.config(text="Button Clicked!")

button = tk.Button(root, text="Click Me!", command=button_click)
button.pack()

このコードは、親ウィンドウをルート、テキストを「Click Me!」として、button という名前のボタン オブジェクトを作成します。ボタン コントロールのコマンド パラメーターは、ボタンがクリックされたときにトリガーされる機能を指定します。button_click() 関数は、ラベル コントロールのテキストを「Button Clicked!」に設定します。

  • 入力ボックス(エントリ)の作成

入力ボックス (Entry) は、ユーザーによるテキスト入力を受け取るために使用される一般的に使用されるコントロールです。Tkinter では、Entry クラスを使用して入力ボックス コントロールを作成します。次のコードは、entry という名前の入力ボックス オブジェクトを作成し、親ウィンドウは root になります。

def entry_change(event):
    print(entry.get())

entry = tk.Entry(root)
entry.bind("<Return>", entry_change)  # 绑定回车键事件
entry.pack()

このコードは、entry という名前の入力ボックス オブジェクトを作成し、親ウィンドウは root になります。entry_change() 関数は、入力ボックス コントロール内のテキストを出力します。bind() メソッドは、Enter キー イベントをentry_change() 関数にバインドするため、ユーザーが Enter キーを押すと、entry_change() 関数が呼び出されます。

  • チェックボックス(チェックボタン)を作成する

チェックボックス (チェックボタン) は、バイナリ選択を表すために使用される一般的に使用されるコントロールです。Tkinter では、Checkbutton クラスを使用してチェックボックス コントロールを作成します。次のコードは、親ウィンドウをルートとして、checkbox という名前のチェックボックス オブジェクトを作成します。

def checkbox_click():
    if checkbox_var.get():
        label.config(text="Checkbox checked!")
    else:
        label.config(text="Checkbox unchecked!")

checkbox_var = tk.BooleanVar()
checkbox = tk.Checkbutton(root, text="Check me!", variable=checkbox_var, command=checkbox_click)
checkbox.pack()

このコードは、親ウィンドウがルートである checkbox という名前のチェックボックス オブジェクトを作成します。Checkbutton コントロールの変数パラメーターはコントロールの状態を指定し、コマンド パラメーターはチェック ボックスの状態が変化したときにトリガーされる関数を指定します。checkbox_click() 関数は、ラベル コントロールのテキストを「チェックボックスがオンになっています!」または「チェックボックスがオフになっています!」に設定します。

  • ラジオボタンを作成する

ラジオボタンは、複数の選択を表すために使用される一般的に使用されるコントロールです。Tkinter では、Radiobutton クラスを使用してラジオ ボタン コントロールを作成します。次のコードは、radiobutton_var という名前のラジオ ボタン変数と、radio1 および radio2 という名前の 2 つのラジオ ボタン コントロールを作成します。

def radiobutton_click():
    if radiobutton_var.get() == 1:
        label.config(text="Radio 1 selected!")
    elif radiobutton_var.get() == 2:
        label.config(text="Radio 2 selected!")

radiobutton_var = tk.IntVar()

radio1 = tk.Radiobutton(root, text="Radio 1", variable=radiobutton_var, value=1, command=radiobutton_click)
radio1.pack()

radio2 = tk.Radiobutton(root, text="Radio 2", variable=radiobutton_var, value=2, command=radiobutton_click)
radio2.pack()

このコードは、親ウィンドウをルートとして、radiobutton_var という名前のラジオボタン変数を作成します。2 つのラジオボタン コントロールの変数パラメータは radiobutton_var として指定され、値パラメータはそれぞれ 1 と 2 で、2 つのラジオボタン コントロールのオプション値を示します。コマンド パラメーターは、ラジオ ボタンの状態が変化したときにトリガーされる機能を指定します。radiobutton_click() 関数は、ラベル コントロールのテキストを「Radio 1 selected!」または「Radio 2 selected!」に設定します。

上記では、Tkinter を使用して GUI アプリケーションを作成する方法を紹介し、ラベル、ボタン、入力ボックス、チェック ボックス、ラジオ ボックスなどの共通コントロールを作成しました。これは Tkinter の入門チュートリアルにすぎません。さらに学習を必要とする高度な使用法やコントロールが多数あります。この記事の紹介を通じて、読者が Tkinter の使用と応用についてさらに学ぶことができれば幸いです。

国民の祝福

プログラミング

import tkinter as tk
import random as ra
import threading as td
import time as ti

def Happy():
    root = tk.Tk()
    width = 200
    height = 50
    screenwidth = root.winfo_screenwidth()
    screenheight = root.winfo_screenheight()
    x = ra.randint(0, screenwidth)
    y = ra.randint(0, screenheight)
    root.title("⭐")
    root.geometry("%dx%d+%d+%d" % (width, height, x, y))
    tk.Label(root, text='国庆快乐!', fg='gold', bg='red', font=("Comic Sans MS", 20), width=30, height=5).pack()
    root.mainloop()


def Star():
    root = tk.Tk()
    screenwidth = root.winfo_screenwidth()
    screenheight = root.winfo_screenheight()
    root.geometry("%dx%d+%d+%d" % (screenwidth, screenheight, 0, 0))
    root.title("⭐")
    tk.Label(root, text="⭐", fg='yellow', bg='red', font=("Comic Sans MS", 500), width=300, height=0).pack()
    root.mainloop()


……(完整代码文末公众号免费领取哦)

プログラム分析

このコードは、Python の GUI ライブラリ Tkinter を使用して、建国記念日をテーマにした GUI エフェクトを作成します。

まず、祝福のための関数 Happy() が定義されており、この関数はウィンドウをポップアップして「ハッピーナショナルデー!」という文字を表示し、同時にウィンドウの位置とサイズはランダムです。このようにして、複数の祝福ウィンドウが画面上にランダムに表示され、祝福がより興味深いものになります。

次に、関数 Star() が背景に定義されています。この関数は、ウィンドウの中央に大きな星が表示された全画面ウィンドウをポップアップ表示します。この効果は非常にお祭り気分で、建国記念日のテーマと一致しています。全画面表示を実現するために、コードは winfo_screenwidth() メソッドと winfo_screenheight() メソッドを使用して画面解像度を取得し、ウィンドウ サイズを画面解像度に設定して全画面表示の効果を実現します。

main 関数では、まず td.Thread を使用して Star() 関数のスレッドを作成し、そのスレッドをデーモン スレッドとして設定します。このようにして、メインスレッドが終了するとデーモンスレッドも終了するため、全画面のスター背景効果が実現します。次に、ループを使用して Happy() 関数用の 10 個のスレッドを作成し、これらのスレッドをデーモン スレッドとして設定します。ループ内の ti.sleep(0.1) は、複数の祝福ウィンドウが同時にポップアップすることによって引き起こされる視覚的な混乱を避けるために、スレッド間に一定の時間間隔を設けるためのものです。

全体として、このコードは Tkinter のコントロールとスレッド機能を使用して、非常に興味深い GUI 効果を実現しています。同時に、この例を通じて、ウィンドウやコントロールの作成、コントロールのプロパティの設定など、Tkinter の基本的な使用方法を学ぶこともできます。

終わり

皆さん何日休みましたか?

おすすめ

転載: blog.csdn.net/m0_68111267/article/details/133427031