web-dev-qa-db-ja.com

tkinterでメッセージボックスを作成するにはどうすればよいですか?

私は、「はい」と「いいえ」のボタンを持つかなり単純なメッセージボックスをtkinterで構築しようとしています。内部で「はい」ボタンを押すと、ファイルに「はい」と書き込む必要があります。同様に、「NO」を押すと、ファイルにNOを書き込む必要があります。これどうやってするの?

9
user46646

モジュール tkMessageBox for Python 2.7または対応するバージョンのPython 3は_tkinter.messagebox_と呼ばれます。

askquestion()はまさにあなたが望む関数のようです。文字列_"yes"_または_"no"_も返されます。

19
MatrixFrog

Python 2.7のメッセージボックスを使用して質問する方法は次のとおりです。具体的にはモジュールtkMessageBoxが必要です。

from Tkinter import *
import tkMessageBox


root = Tk().withdraw()  # hiding the main window
var = tkMessageBox.askyesno("Title", "Your question goes here?")

filename = "log.txt"

f = open(filename, "w")
f.write(str(var))
print str(var) + " has been written to the file " + filename
f.close()
11
user1497423

askquestion関数の戻り値を変数に割り当ててから、変数をファイルに書き込むだけです。

from tkinter import messagebox

variable = messagebox.askquestion('title','question')

with open('myfile.extension', 'w') as file: # option 'a' to append
    file.write(variable + '\n')
8
Alyson