Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 Aptana 3 Pydev在运行后未获得Tk()窗口_Python 2.7_Tkinter_Tk_Aptana3 - Fatal编程技术网

Python 2.7 Aptana 3 Pydev在运行后未获得Tk()窗口

Python 2.7 Aptana 3 Pydev在运行后未获得Tk()窗口,python-2.7,tkinter,tk,aptana3,Python 2.7,Tkinter,Tk,Aptana3,我是Aptana的新手,在网上搜索过它是如何处理gui开发的 我尝试了以下代码。它在控制台中没有显示任何bug。但是,它不会给我名为myGui的Tk()窗口 from Tkinter import * import ttk def main(): myGui = Tk() myGui.title("My Gui New") myGui.geometry('400x200+200+200') l = Label(myGui, text="Help") l

我是Aptana的新手,在网上搜索过它是如何处理gui开发的

我尝试了以下代码。它在控制台中没有显示任何bug。但是,它不会给我名为myGui的Tk()窗口

from Tkinter import *
import ttk

def main():
    myGui = Tk()
    myGui.title("My Gui New")
    myGui.geometry('400x200+200+200')

    l = Label(myGui, text="Help")
    l.pack()

if __name__ == "__main__":
    main()   

任何指示。我能够让我的函数在控制台中运行,但是这个Gui开发的效果不是很好

IT是正确的,您确实希望将
myGui.mainloop()
添加到
main
的末尾

通常,当我在Tkinter中工作时,我会尝试将函数
main
中的一些信息移动到
if…
子句中。这使得更大、更复杂的接口更易于处理

一个好的开始是使用一个类:

from Tkinter import *
from ttk import *

class App(Frame):
    def __init__(self, master):
        Frame.__init__(self, master)
        self.pack()
        self.create_widgets()

    def create_widgets(self):
        self.l = Label(self, text='Help')
        self.l.pack()

if __name__ == '__main__':
    root = Tk()
    app = App(root)
    root.mainloop()

这样做的好处是,您可以轻松地引入顶级,添加额外的小部件(以有组织的方式)并拥有更清晰的代码。您还可以使用这些类为其他小部件制作模板;在本例中,您正在构建一个特殊的框架类,并为其提供所需的任何属性。对于按钮、条目和其他帧也可以这样做。我不熟悉aptana3,但这应该可以正常工作。只要确保缩进是一致的。

如果缩进是正确的,您需要将
myGui.mainloop()
添加到
main
的末尾

通常,当我在Tkinter中工作时,我会尝试将函数
main
中的一些信息移动到
if…
子句中。这使得更大、更复杂的接口更易于处理

一个好的开始是使用一个类:

from Tkinter import *
from ttk import *

class App(Frame):
    def __init__(self, master):
        Frame.__init__(self, master)
        self.pack()
        self.create_widgets()

    def create_widgets(self):
        self.l = Label(self, text='Help')
        self.l.pack()

if __name__ == '__main__':
    root = Tk()
    app = App(root)
    root.mainloop()

这样做的好处是,您可以轻松地引入顶级,添加额外的小部件(以有组织的方式)并拥有更清晰的代码。您还可以使用这些类为其他小部件制作模板;在本例中,您正在构建一个特殊的框架类,并为其提供所需的任何属性。对于按钮、条目和其他帧也可以这样做。我不熟悉aptana3,但这应该可以正常工作。只需确保缩进一致。

您是否尝试过在
main
函数的末尾添加
myGui.mainloop()
?感谢您指出了这个错误。添加myGui.mainloop()是我的问题。您是否尝试过在
main
函数的末尾添加一个
myGui.mainloop()
?感谢您指出这个错误。添加myGui.mainloop()是我的问题。非常感谢!哦,非常感谢你!哎呀