私はPythonで関数を使って遊んでいますが、Tkinterを使ってJOptionPaneをJavaから実行できます...私はPython 3.xを実行していますが、少し問題があります関数を使って変数を変更できないPython
from tkinter import *
def showMessageDialog(text):
text = text
janela = Tk()
janela.geometry("400x100")
janela["bg"] = "grey"
janela.title(" ")
lb = Label(janela, text=str(text))
lb.place(x=200,y=50)
janela.mainloop()
def showInputDialog(text):
x = " "
def botaoClicado():
x = ed.get()
janela.destroy()
return x
text = str(text)
janela = Tk()
janela.geometry("400x100")
janela["bg"] = "grey"
janela.title(" ")
lb = Label(janela, text=str(text))
lb.place(x=120,y=10)
bt = Button(janela, width=10, text="Ok", command=botaoClicado)
bt.place(x=120,y=65)
ed = Entry(janela)
ed.place(x=120,y=35)
janela.mainloop()
return x
x=0
x = showInputDialog("Insira seu nome!")
私はポルトガル語ですみませますが、私はあなたが私を助けることができると思います。私の問題は次のとおりです:
ボタンをクリックすると、エントリが他の機能に返されません。私はお詫びしますが、私はどのようにしてより良い説明ができるのか分かりません。
グローバル変数xを設定する場合は、xを変更する関数の先頭に 'global x'を追加することができます。または 'botInClicado'が' showInputDialog'の外側スコープの変数を変更したい場合は 'nonlocal x'をその定義に追加することができます。ユーザーがボタンをクリックすると、コールバックの戻り値は何も使用されません。 –
それは、ありがとう! xD –