2016-12-02 7 views
0

私は、追加、削除、検索などのさまざまなオプションを持つPythonのコードを持っています... Tkinterを使用してGUIを作成することはできますか?基本的には、あなたが「Add」をクリックすると、新しい値を追加して最初のページなどに戻るための入力ボックスが表示されます... JOptionPaneを使用してJavaでこれを非常に簡単に実行します(ボタンはありません) ..私は、私は簡単にGoogleを考えるオプション付きPython TKinterメニュー

は、すべてのヘルプ

+0

はい、これはすべて可能です。 –

+0

どのように?任意のリンク? –

+0

"どのように"は、stackoverflowのために広すぎます。あなたはtkinterチュートリアルを通して作業する必要があります。 –

答えて

0

に感謝... Tkinterの中のメニューを探してみましたが、私は(ページの左上に表示されてのもの)欲しいものではありません検索でこれらの答えが見つかるはずです。しかし、とにかくここにあなたを助けるためのいくつかのリンクがあります。

Playlist of TKinter tutorial for future use (Object Oriented)

は(彼のユーチューブチャンネルと彼のサイトは、Python(ゲーム、機械学習、Webサイトなど)

Add buttons

Input(また偉大なウェブサイト)

基本的な学習のための驚くべきものだと高度

Popup

例コード

私が言ったように、あなたはすぐにこれらのgoogleと答えを見つけることができます。

from tkinter import * 
import sys 

class popupWindow(object): 
    def __init__(self,master): 
     top=self.top=Toplevel(master) 
     self.l=Label(top,text="Add a new value") 
     self.l.pack() 
     self.e=Entry(top) 
     self.e.pack() 
     self.b=Button(top,text='Ok',command=self.cleanup) 
     self.b.pack() 
    def cleanup(self): 
     self.value=self.e.get() 
     self.top.destroy() 
class mainWindow(object): 
    def __init__(self,master): 
     self.master=master 
     self.b=Button(master,text="Add!",command=self.popup) 
     self.b.pack() 
     # Check python shell for the output 
     self.b2=Button(master,text="Print Value From Input",command=lambda: sys.stdout.write(self.entryValue()+'\n')) 
     self.b2.pack() 

    def popup(self): 
     self.w=popupWindow(self.master) 
     self.master.wait_window(self.w.top) 

    def entryValue(self): 
     return self.w.value 




root = Tk() 
m = mainWindow(root) 
root.mainloop() 
+0

実際、それらのどれも有用ではありません。私は明らかにボタンをクリックしたいと言っていました。私がクリックすると、アクションを実行する別のウィンドウが開きます。 –

+0

サンプルコードを表示するためにオリジナルの答えを編集しました。 stackoverflowで、誰もあなたのためにあなたの仕事をするつもりはない、我々はあなたのベストを試した後に助けを提供しています。 – Manny102030

0

@ mann102030 このコードを取得しました。基本的に私が望むのは、ユーザーがTkinterに入力した値を持つツリーにノードを挿入することです。私は、私はツリーを印刷するために作成した関数を呼び出す方法を説明できないので、ユーザーが入力している値が実際に挿入されているかどうかはわかりません(関数はクラスBSTにもあります)。 私はmainWindowクラスのBSTを呼び出していましたが、BSTではユーザーが入力するウィンドウを呼び出し、「OK」をクリックすると関数挿入が呼び出されます。その後、私はツリー内に置くためにノードを作成するために、ユーザーからの値を渡します...任意の改善/ツリーを印刷する関数を呼び出す方法のアイデア? class mainWindow(object): def __init__(self,master): self.master = master self.b=Button(master,text="Add value",command=self.popupAdd) self.b.pack() def popupAdd(self): self.w=BST(self.master) self.master.wait_window(self.w.top) class BST(object): def __init__(self,master): self._root = None top=self.top=Toplevel(master) self.l=Label(top,text="Add a new value") self.l.pack() self.e=Entry(top) self.e.pack() self.b=Button(top,text='Ok',command=self.insert) self.b.pack() def insert(self): novo = No(self.e.get()) #insert value in Node if self._root == None: self._root = novo else: pai = self._root temp = self._root while temp != None: if valor > temp.getValor(): pai = temp temp = temp.getRight() elif (valor < temp.getValor()): pai = temp temp = temp.getLeft() else: temp = None print("Value Already exists") if valor > pai.getValor(): pai.setRight(novo) elif valor < pai.getValor(): pai.setLeft(novo) self.top.destroy() def printTree(self, root): if root != None: self.printTree(root.getLeft()) print(" " + str(root.getValor()), end="") self.printTree(root.getRight())

関連する問題