ユーザーにテキストの文字列を入力するように促そうとしています。python tkinterでプロンプトのようなJavascriptを利用できますか?
6 に答える
はい、tkSimpleDialog.askstringを使用します。残念ながら、これはメインのPythonドキュメントには含まれていないため、見つけるのは少し難しいです。
これを試して:
import tkinter
x = tkinter.tkSimpleDialog.askstring
質問が投稿された後に見つけた状況の1つで、答えを見つけるのに苦労したので、質問を続けます。
tkSimpleDialogを使用できます。
あなたはイエス/ノーの質問をすることができます
from tkinter import *
answer = tkinter.messagebox.askquestion
Getting User Input With Entry Widgets
名前やメールアドレスなど、ユーザーから少しのテキストを取得する必要がある場合は、エントリウィジェットを使用します。ユーザーがテキストを入力できる小さなテキストボックスが表示されます。エントリウィジェットの作成とスタイル設定は、ラベルウィジェットとボタンウィジェットとほとんど同じように機能します。たとえば、次のコードは、背景が青色、テキストが黄色、幅が50テキスト単位のウィジェットを作成します。
entry = tk.Entry(fg="yellow", bg="blue", width=50)
ただし、エントリウィジェットの興味深い点は、スタイルを設定する方法ではありません。それらを使用してユーザーから入力を取得する方法です。エントリウィジェットで実行できる主な操作は3つあります。
- .get()を使用したテキストの取得
- .delete()を使用してテキストを削除する
- .insert()を使用したテキストの挿入
エントリウィジェットを理解するための最良の方法は、ウィジェットを作成して操作することです。Pythonシェルを開き、このセクションの例に従ってください。まず、tkinterをインポートして、新しいウィンドウを作成します。
>>> import tkinter as tk
>>> window = tk.Tk()
次に、ラベルウィジェットとエントリウィジェットを作成します。
>>> label = tk.Label(text="Name")
>>> entry = tk.Entry()
ラベルは、エントリウィジェットにどのような種類のテキストを入力するかを示します。エントリにいかなる種類の要件も適用しませんが、プログラムがそこに何を入れることを期待しているかをユーザーに通知します。ウィジェットが表示されるように、ウィジェットをウィンドウに.pack()する必要があります。
>>> label.pack()
>>> entry.pack()
プレビューは次のように なります。
私はこれがあなたが望むかもしれないものだと思います
Python 2.7の場合:
from Tkinter import *
root = Tk()
E = Entry(root)
E.pack()
root.mainloop()
Python 3の場合:
from tkinter import *
root = Tk()
e = Entry(root)
e.pack()
root.mainloop()