質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

ウィンドウ

コンピューター用語において、ウィンドウとはユーザとプログラムのやり取りを可能にするGUIの枠組みのことをいいます。

button

HTMLで用いる<button>タグです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

4回答

12169閲覧

ボタンを押したら次のウィンドウを表示させたい!

onikudaisuki

総合スコア23

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Tkinter

Tkinterは、GUIツールキットである“Tk”をPythonから利用できるようにした標準ライブラリである。

ウィンドウ

コンピューター用語において、ウィンドウとはユーザとプログラムのやり取りを可能にするGUIの枠組みのことをいいます。

button

HTMLで用いる<button>タグです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

1グッド

0クリップ

投稿2020/11/09 14:01

編集2020/11/10 11:14

前提・実現したいこと

Tkinterで「次へボタン」を作成し、ボタンを押したら次のウィンドウを表示させたいです。
既に次に表示させたいプログラムは書いてあります。しかし、それとどんな風に連結させたらいいのか分かりません。
先に表示させるウィンドウのコードと「次へボタン」が押されたあとに表示させたいウィンドウのコードを載せます。
すべて正しく動くのでこのサイトに反しているかもしれません。何卒宜しくお願い致します。

該当のソースコード

python

1import tkinter 2def create_window(): 3 import random 4 D = random.randint(0,5) 5#ウィンドウ作成 6 root = tkinter.Tk() 7 root.title("運勢占い") 8 root.minsize(640, 480) 9 root.option_add("*font", ["MS Pゴシック", 22]) 10 #画像読み込み 11 getu = tkinter.PhotoImage(file="大吉.png") 12 ka = tkinter.PhotoImage(file="凶.png") 13 sui = tkinter.PhotoImage(file="吉.png") 14 moku = tkinter.PhotoImage(file="小吉.png") 15 #画像表示 16 canvas = tkinter.Canvas(bg="plum", width=640, height=480) 17 canvas.place(x=0, y=0) 18 img = tkinter.PhotoImage(file="神社.png") 19 canvas.create_image(320, 240, image=img) 20 #ラベル01 21 question1 = tkinter.Label(text="あなたが入力した数字で今日の運勢を占います。", bg="plum") 22 question1.place(x=20, y=23) 23 question2 = tkinter.Label(text="を↓に入力してください。", bg="plum") 24 question2.place(x=279, y=60) 25 question3 = tkinter.Label(text="0~10の数字",fg="red", bg="plum") 26 question3.place(x=117, y=60) 27 #入力ボックス 28 entry = tkinter.Entry(width=2, bd=4, bg="#f9f948") 29 entry.place(x=300, y=140) 30 31 #決定ボタン 32 button = tkinter.Button(text="占うボタン",bd=3, bg="#e0a3ff") 33 button.place(x=240, y=400) 34 #おみくじ始まり 35 def btn_click(): 36 a = float(entry.get()) 37 if a > 10: 38 again_text = tkinter.Label(text="0から10の数字を入力してください。",fg="red",bg="plum") 39 again_text.place(x=105,y=30) 40 question1.destroy() 41 question2.destroy() 42 question3.destroy() 43 return 44 if a < 0: 45 again_text = tkinter.Label(text="0から10の数字を入力してください。",fg="red",bg="plum") 46 again_text.place(x=105,y=30) 47 question1.destroy() 48 question2.destroy() 49 question3.destroy() 50 return 51 if a+D == 8 or a+D == 9: 52 again_text = tkinter.Label(text="                        ",fg="red",bg="plum") 53 again_text.place(x=100,y=30) 54 res_text = tkinter.Label(text="あなたの今日の運勢は大吉です。",fg="red", bg="plum") 55 res_text.place(x=115, y=20) 56 res_text = tkinter.Label(text="やったね!", bg="plum") 57 res_text.place(x=250, y=425) 58 canvas.delete("all") 59 question1.destroy() 60 question2.destroy() 61 question3.destroy() 62 entry.destroy() 63 button.destroy() 64 canvas.create_image(320, 240, image=getu) 65 if 10 <= a+D <= 15: 66 again_text = tkinter.Label(text="                           ",fg="red",bg="plum") 67 again_text.place(x=100,y=30) 68 res_text = tkinter.Label(text="あなたの今日の運勢は凶です。",fg="darkviolet",bg="plum") 69 res_text.place(x=120, y=20) 70 res_text = tkinter.Label(text="ざんねーん", bg="plum") 71 res_text.place(x=250, y=425) 72 canvas.delete("all") 73 question1.destroy() 74 question2.destroy() 75 question3.destroy() 76 entry.destroy() 77 button.destroy() 78 canvas.create_image(320, 240, image=ka) 79 if 4 <= a+D <= 7: 80 again_text = tkinter.Label(text="                           ",fg="red",bg="plum") 81 again_text.place(x=100,y=30) 82 res_text = tkinter.Label(text="あなたの今日の運勢は吉です。",fg="green",bg="plum") 83 res_text.place(x=120, y=24) 84 res_text = tkinter.Label(text="おっええやん", bg="plum") 85 res_text.place(x=240, y=430) 86 canvas.delete("all") 87 question1.destroy() 88 question2.destroy() 89 question3.destroy() 90 entry.destroy() 91 button.destroy() 92 canvas.create_image(320, 245, image=sui) 93 if 0 <= a+D <= 3: 94 again_text = tkinter.Label(text="                           ",fg="red",bg="plum") 95 again_text.place(x=100,y=30) 96 res_text = tkinter.Label(text="あなたの今日の運勢は小吉です。",fg="sienna",bg="plum") 97 res_text.place(x=120, y=20) 98 res_text = tkinter.Label(text="いいじゃん!", bg="plum") 99 res_text.place(x=243, y=425) 100 canvas.delete("all") 101 question1.destroy() 102 question2.destroy() 103 question3.destroy() 104 entry.destroy() 105 button.destroy() 106 canvas.create_image(320, 240, image=moku) 107 108 button["command"] = btn_click 109 root.mainloop() 110 111root = tkinter.Tk() 112root.title("運勢占い") 113root.minsize(640, 480) 114root.option_add("*font", ["MS Pゴシック", 22]) 115 116canvas = tkinter.Canvas(bg="black" , width=640 , height=480) 117canvas.place(x=0, y=0) 118 119intro = tkinter.Label(text = "ようこそ", bg="black", fg="red") 120intro.place(x=280, y=180) 121 122intro = tkinter.Label(text = "ここではあなたが入力した数字で\n今日の運勢を占います", bg="black", fg="red") 123intro.place(x=120, y=230) 124 125button = tkinter.Button(text = "次へ" ,bd = 3, bg= "black", fg="#3374ff", command=create_window) 126button.place(x=280, y=370) 127 128root.mainloop() 129

###追記
イメージ説明

試したこと

button = tkinter.Button(text = "次へ" ,bd = 3, bg= "black", fg="#3374ff")
button.place(x=280, y=370)
の後にdef文を書いてみようと思いましたが、どんな風に書いたらいいか分からずここに聞きました。甘い考えですみません。

補足情報(FW/ツールのバージョンなど)

python3.7.1
Windows10

teamikl👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

root = tkinter.Tk() や root.mainloop() は、
出来ればプログラム中で複数回呼び出さない方が良いです。

2つ目のウィンドウを作りたい場合は Toplevel が適切です。

tkinter.Tk()の複数回の利用について

tkinter.Tk は、ライブラリを使う為の初期化を行う為、
通常は一度のみの利用にして下さい。

複数回使う場合は、様々な問題が報告されており、利用には注意が必要になります。
tkinter.Tk を複数回使いたい場合大抵、
新しいウィンドウを作りたい場合なのでToplevel で済むはずです。

mainloopの複数回呼び出しについて

button の command に登録した関数等は、
mainloop から呼び出されるので、内部で mainloopを呼び出すと
create_window の処理が終わることなく、内部のmainloopに処理が移り
関数呼び出しが、どんどん深くなっていってしまいます。
(エラー時に不要な情報が大量に出る等の弊害も有)

ダイアログ的な利用をする場合等、mainloopをネストすることも有りますが、
「サブウィンドウが閉じられるの待って何か処理をする」というような状況でない限り、
mainloop の利用も一度のみに留めた方が無難です。


Tkinterで「次へボタン」を作成し、ボタンを押したら次のウィンドウを表示させたいです。

「ウィンドウ」について、認識の齟齬がありそうなので確認ですが

やりたいことは、
「元のウィンドウ」を保ったまま「新しいウィンドウ」を作成するという事ですか?
ウィンドウ(外枠のGUI)を保ったまま、新しい画面を表示する、「ページ遷移」ではありませんか?

「create_window 内の」、root = tkinter.Tk() と root.mainloop() の2か所のみコメントアウトすると、「ページ遷移」になります。

新しいウィンドウが必要で、新しいウィンドウに対してウィジェットを配置するには、
ウィジェット作成の際に親ウィジェットを明示的に指定します。

diff

1# 例 2- tkinter.Canvas(bg="plum", width=640, height=480) 3+ tkinter.Canvas(root, bg="plum", width=640, height=480)

別の方法: 親ウィジェットの指定を省略した場合、
最初に tkinter.Tk() 内で作られた Toplevel が親ウィジェットになるのですが、
これを利用する場合は、最初のroot を事前に破棄する必要があります。

python

1def create_window(): 2 # 略 3 global root 4 root.destroy() 5 6 root = tkinter.Tk()

同時に2つ以上のウィンドウを表示する場合は、Toplevel と 上のウィジェット作成時に親を指定する方法を取ってください。

順番にウィンドウを表示する場合は、後者の方法でも良いのですが、
今回のコードの場合は、mainloopの問題が別にあります。


追記: 最初に掲載されてたコードの場合。

python

1#先に表示させるウィンドウ 2 3# 略 4button = tkinter.Button(text = "次へ" ,bd = 3, bg= "black", fg="#3374ff") 5button.place(x=280, y=370) 6 7button["command"] = root.destroy # この行を追加 8 9root.mainloop() 10 11 12#ボタンが押された後に表示したいウィンドウ 13root = tkinter.Tk() 14# 略 15root.mainloop()

投稿2020/11/10 22:03

編集2020/11/11 02:01
teamikl

総合スコア8681

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

onikudaisuki

2020/11/11 09:06

回答ありがとうございます。そうです!僕のやりたいことは「ページの遷移」です!「次のウィンドウを表示する」という言葉しかしらなくて、ほかの方々に勘違いさせてしまいました。解決できて嬉しい気持ちでいっぱいです。ありがとうございました。
teamikl

2020/11/12 01:37

そうだったのですね。プログラムを実行して見ると、 新しいウィンドウにする必要あるのかな?と疑問に思ったので。 ここはキーワードさえ解れば、「tkinter 画面遷移」等で検索すると、他の実装例も多数見つかると思います。 補足情報で 今回のコードでは、画面切り替えの度に 破棄(destroy)・新規生成してますが、 他に、予め画面をフレームに作成し、レイアの様に重ねておいて、 画面遷移の時に、一番上に表示(tkraise)させる実装方法もあり、 何度も同じ画面を再利用する場合に有用です。 また、入力画面 から 結果表示画面への値の受け渡し方にも着目して見て下さい。 今の方法では、画面内の entry が破棄されると値が参照できなくなります。 対策として tkinter.IntVar 等を用いて、画面を跨いで変数を持ちまわしたりします。
onikudaisuki

2020/11/13 05:09

親切にありがとうございます。いろんな方法があるんですね!これから試そうと思います。まだまだ進化できそうです。
guest

0

def文を使用して2つ目のウィンドウ作成を関数として定義した上でtkinter.Buttonにcommandオプションを追加して実行します。
def文はcommandを使用した変数buttonよりも上に配置してください。
ちなみに、import tkinter は最初の一度のみで大丈夫です。

Python

1#ボタンが押された後に表示したいウィンドウ 2def create_window(): 3 window2 = tkinter.Tk() 4 window2.title("運勢占い") 5 window2.minsize(640, 480) 6 window2.option_add("*font", ["MS Pゴシック", 22]) 7 8#中略 9 10button = tkinter.Button(text = "次へ" ,bd = 3, bg= "black", fg="#3374ff",command=create_window) 11button.place(x=280, y=370)

もしrootウィンドウが閉じられた場合に同時に閉じるようにしたい場合は、Toplevelを使用します

Python

1def create_window(): 2 sub_window = tkinter.Toplevel() 3 sub_window.title("運勢占い") 4 sub_window.minsize(640, 480) 5 sub_window.option_add("*font", ["MS Pゴシック", 22]) 6

投稿2020/11/10 07:49

sin471

総合スコア50

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

onikudaisuki

2020/11/10 11:43 編集

回答ありがとうございます。「次へボタン」を押したら次のウィンドウを表示することはできました。しかしながら、ボタンを押すと次に表示するウィンドウと白いウィンドウが表示されました。白いウィンドウを出てこないようにするためにはどうしたらいいですか??追記でコード載せたので指摘欲しいです。宜しくお願い致します。
guest

0

tkinterでは、1つのアプリケーションで複数のウィンドウを作って表示させることができます。

「tkinter 複数ウィンドウ」などで検索すると作りかたがいろいろ出てきます。

他の方ののサイトですが紹介させていただきます。

投稿2020/11/09 14:13

TakaiY

総合スコア13687

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

onikudaisuki

2020/11/10 10:59

回答ありがとうございます。appというコードを初めて見ました。これがアプリケーションなんですかね^^ 複数のウィンドウを作る方法があるなんて知りませんでした。
guest

0

おはようございます。

問題文読ませていただきました。

こんな感じでいかがでしょうか?

python

1import tkinter 2import random 3 4 5class Application(): 6 # 不適切な入力があった場合に、label Widget情報を格納する変数 7 again_text = None 8 # 運勢を占う際に利用する、entry Widget情報を格納する変数 9 entry = None 10 # サブWindow情報を格納する変数 11 subWindow = None 12 # テキスト情報を格納する変数 13 question1 = None 14 # テキスト情報を格納する変数 15 question2 = None 16 # テキスト情報を格納する変数 17 question3 = None 18 # canvas Widget情報を格納する変数 19 canvas = None 20 # button Widget情報を格納する変数 21 button = None 22 23 # おみくじ始まり 24 def btn_click(self): 25 # 期待しない値が来ることを加味して、try exceptを利用する。 26 try: 27 a = float(self.entry.get()) 28 except: 29 a = -999999 30 31 # テキスト情報を破棄する。 32 self.question1.destroy() 33 self.question2.destroy() 34 self.question3.destroy() 35 36 # 期待しない値をentry Widgetへ格納した場合 37 if a > 10 or a < 0: 38 self.again_text = tkinter.Label( 39 self.subWindow, text="0から10の数字を入力してください。", fg="red", bg="plum") 40 # サブWindowを親要素として、label Widgetをどのように配置するのか? 41 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 42 self.again_text.place(x=105, y=30) 43 return 44 45 if not self.again_text is None: 46 # label Widget情報を破棄する。 47 self.again_text.destroy() 48 49 # entry Widget情報を破棄する。 50 self.entry.destroy() 51 # canvas Widget情報を削除する。 52 self.canvas.delete("all") 53 # button Widget情報を破棄する。 54 self.button.destroy() 55 56 D = random.randint(0, 5) 57 num = a + D 58 if 0 <= num <= 3: 59 luckText = '小吉' 60 fgText = "sienna" 61 desc = "いいじゃん!" 62 # 画像について : https://kuroro.blog/python/Z7k1LSyDyiDHtD5UCjmG/ 63 image = tkinter.PhotoImage(file=luckText + ".png") 64 elif 4 <= num <= 7: 65 luckText = '吉' 66 fgText = "green" 67 desc = "おっええやん" 68 # 画像について : https://kuroro.blog/python/Z7k1LSyDyiDHtD5UCjmG/ 69 image = tkinter.PhotoImage(file=luckText + ".png") 70 elif num == 8 or num == 9: 71 luckText = '大吉' 72 fgText = "red" 73 desc = "やったね!" 74 # 画像について : https://kuroro.blog/python/Z7k1LSyDyiDHtD5UCjmG/ 75 image = tkinter.PhotoImage(file=luckText + ".png") 76 else: 77 luckText = '凶' 78 fgText = "darkviolet" 79 desc = "ざんねーん" 80 # 画像について : https://kuroro.blog/python/Z7k1LSyDyiDHtD5UCjmG/ 81 image = tkinter.PhotoImage(file=luckText + ".png") 82 83 # Canvasについて : https://kuroro.blog/python/ANyM9WLpd0LSXRQAELOj/ 84 self.canvas.create_image(320, 240, image=image) 85 86 res_text = tkinter.Label( 87 self.subWindow, text="あなたの今日の運勢は" + luckText + "です。", fg=fgText, bg="plum") 88 # サブWindowを親要素として、label Widgetをどのように配置するのか? 89 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 90 res_text.place(x=115, y=20) 91 92 res_text = tkinter.Label(self.subWindow, text=desc, bg="plum") 93 # サブWindowを親要素として、label Widgetをどのように配置するのか? 94 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 95 res_text.place(x=243, y=425) 96 97 def create_window(self): 98 # メインWindowに紐づくサブWindowを作成する。 99 # Toplevelについて : https://kuroro.blog/python/kEE4RwgYN45V0lM92SDM/ 100 self.subWindow = tkinter.Toplevel() 101 102 # サブWindowへタイトルをつける。 103 self.subWindow.title("運勢占い") 104 # サブWindowの最小幅を設定。 105 self.subWindow.minsize(640, 480) 106 # サブWindowのfont設定。 107 self.subWindow.option_add("*font", ["MS Pゴシック", 22]) 108 109 # サブWindowを親要素として、canvas Widgetを作成する。 110 # bg : 背景色の設定 111 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 112 # width : 幅の設定 113 # height : 高さの設定 114 # Canvasについて : https://kuroro.blog/python/ANyM9WLpd0LSXRQAELOj/ 115 self.canvas = tkinter.Canvas( 116 self.subWindow, bg="plum", width=640, height=480) 117 # サブWindowを親要素として、canvas Widgetをどのように配置するのか? 118 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 119 self.canvas.place(x=0, y=0) 120 121 # 画像について : https://kuroro.blog/python/Z7k1LSyDyiDHtD5UCjmG/ 122 # Canvasについて : https://kuroro.blog/python/ANyM9WLpd0LSXRQAELOj/ 123 img = tkinter.PhotoImage( 124 file="/path_to/xxx.xxx") 125 self.canvas.create_image(320, 240, image=img) 126 127 # サブWindowを親要素として、label Widgetを作成する。 128 # text : テキスト情報 129 # bg : 背景色の設定 130 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 131 # Labelについて : https://kuroro.blog/python/Pj4Z7JBNRvcHZvtFqiKD/ 132 self.question1 = tkinter.Label( 133 self.subWindow, text="あなたが入力した数字で今日の運勢を占います。", bg="plum") 134 # サブWindowを親要素として、label Widgetをどのように配置するのか? 135 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 136 self.question1.place(x=20, y=23) 137 138 # サブWindowを親要素として、label Widgetを作成する。 139 # text : テキスト情報 140 # bg : 背景色の設定 141 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 142 # Labelについて : https://kuroro.blog/python/Pj4Z7JBNRvcHZvtFqiKD/ 143 self.question2 = tkinter.Label( 144 self.subWindow, text="を↓に入力してください。", bg="plum") 145 # サブWindowを親要素として、label Widgetをどのように配置するのか? 146 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 147 self.question2.place(x=279, y=60) 148 149 # サブWindowを親要素として、label Widgetを作成する。 150 # text : テキスト情報 151 # fg : 文字色の設定 152 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 153 # bg : 背景色の設定 154 # Labelについて : https://kuroro.blog/python/Pj4Z7JBNRvcHZvtFqiKD/ 155 self.question3 = tkinter.Label( 156 self.subWindow, text="0~10の数字", fg="red", bg="plum") 157 # サブWindowを親要素として、label Widgetをどのように配置するのか? 158 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 159 self.question3.place(x=117, y=60) 160 161 # サブWindowを親要素として、entry Widgetを作成する。 162 # width : 幅の設定 163 # bd : 枠の大きさを設定 164 # bg : 背景色の設定 165 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 166 # Entryについて : https://kuroro.blog/python/PUZp77YFxrXvMCjpZbUg/ 167 self.entry = tkinter.Entry(self.subWindow, width=2, bd=4, bg="#f9f948") 168 # サブWindowを親要素として、entry Widgetをどのように配置するのか? 169 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 170 self.entry.place(x=300, y=140) 171 172 # サブWindowを親要素として、button Widgetを作成する。 173 # text : テキスト情報 174 # bd : 枠の大きさを設定 175 # bg : 背景色の設定 176 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 177 # command : ボタンをクリックした時に、実行する関数を設定。self.btn_clickとする。 178 # Buttonについて : https://kuroro.blog/python/oFju6EngDtcYtIiMIDf1/ 179 self.button = tkinter.Button(self.subWindow, text="占うボタン", 180 bd=3, bg="#e0a3ff", command=self.btn_click) 181 # サブWindowを親要素として、button Widgetをどのように配置するのか? 182 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 183 self.button.place(x=240, y=400) 184 185 def __init__(self, master=None): 186 # Windowへタイトルをつける。 187 root.title("運勢占い") 188 # Windowの最小サイズを設定する。 189 root.minsize(640, 480) 190 # Windowへfontの設定を行う。 191 root.option_add("*font", ["MS Pゴシック", 22]) 192 193 # Windowを親要素として、canvas Widgetを作成する。 194 # bg : 背景色の設定 195 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 196 # width : 幅の設定 197 # height : 高さの設定 198 # Canvasについて : https://kuroro.blog/python/ANyM9WLpd0LSXRQAELOj/ 199 canvas = tkinter.Canvas(root, bg="black", width=640, height=480) 200 # Windowを親要素として、canvas Widgetをどのように配置するのか? 201 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 202 canvas.place(x=0, y=0) 203 204 # Windowを親要素として、label Widgetを作成する。 205 # text : テキスト情報 206 # bg : 背景色の設定 207 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 208 # fg : 文字色設定 209 # Labelについて : https://kuroro.blog/python/Pj4Z7JBNRvcHZvtFqiKD/ 210 intro = tkinter.Label(root, text="ようこそ", bg="black", fg="red") 211 # Windowを親要素として、label Widgetをどのように配置するのか? 212 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 213 intro.place(x=280, y=180) 214 215 # Windowを親要素として、label Widgetを作成する。 216 # text : テキスト情報 217 # bg : 背景色の設定 218 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 219 # fg : 文字色設定 220 # Labelについて : https://kuroro.blog/python/Pj4Z7JBNRvcHZvtFqiKD/ 221 intro = tkinter.Label( 222 root, text="ここではあなたが入力した数字で\n今日の運勢を占います", bg="black", fg="red") 223 # Windowを親要素として、label Widgetをどのように配置するのか? 224 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 225 intro.place(x=120, y=230) 226 227 # Windowを親要素として、button Widgetを作成する。 228 # text : テキスト情報 229 # bd : 枠の大きさを設定 230 # fg : 文字色設定 231 # 色について : https://kuroro.blog/python/YcZ6Yh4PswqUzaQXwnG2/ 232 # command : ボタンをクリックした時に、実行する関数を設定。self.create_windowとする。 233 # Buttonについて : https://kuroro.blog/python/oFju6EngDtcYtIiMIDf1/ 234 button = tkinter.Button( 235 root, text="次へ", bd=3, bg="black", fg="#3374ff", command=self.create_window) 236 # Windowを親要素として、button Widgetをどのように配置するのか? 237 # placeについて : https://kuroro.blog/python/JyaHUKyFyxCa0baFfXg0/ 238 button.place(x=280, y=370) 239 240 # Windowをループさせて、継続的にWindow表示させる。 241 # mainloopについて : https://kuroro.blog/python/DmJdUb50oAhmBteRa4fi/ 242 root.mainloop() 243 244 245if __name__ == "__main__": 246 # Windowを作成する。 247 root = tkinter.Tk() 248 Application(master=root)

ご確認のほど、よろしくお願いいたします。????‍♂️

投稿2021/06/15 22:23

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問