我想为某些功能做gui,但它不像我想要的我使用python 2.7和它的Tkinter?

时间:2017-07-11 05:54:09

标签: python python-2.7 tkinter

我想将第二个条目放到下拉菜单中帮我解决这个问题?我尝试了地方和包装,但我不知道我在做什么错误帮助我解决这个问题你可以指定功能以及如何使用它像宽度和高度位置?

import Tkinter as Tk
from Tkinter import *
network = Tk(className ="Network")
network.geometry('1000x600') # Size 200, 200
network.resizable(width=False,height=False)
svalue = StringVar() # defines the widget state as string
w = Entry(network,width=80,textvariable=svalue) # adds a textarea widget
w.pack(side=TOP and LEFT)
w.place(x=3,y=3)
button1 = Button(network,text="Press Me")
button1.pack()

# Add a grid
mainframe = Frame(network)
mainframe.grid(column=0,row=0, sticky=(N,W,E,S))
mainframe.columnconfigure(0, weight = 1)
mainframe.rowconfigure(0, weight = 1)
mainframe.place(x=10,y=30)

# Create a Tkinter variable
tkvar = StringVar(network)

# Dictionary with options
choices = { 'IP scanning','openport scanning','','Finding Emails based on domainname','OS footprinting'}
tkvar.set('IP scanning') # set the default option

popupMenu = OptionMenu(mainframe, tkvar, *choices)


button2=Button(mainframe, text="Choose any of them").grid(row = 1, column = 1)

popupMenu.grid(row = 2, column =1)

# on change dropdown value
def change_dropdown(*args):
    print(tkvar.get())

# link function to change dropdown
tkvar.trace('w', change_dropdown)
T = Text(network, height=20,width=60)
T.grid(row=3,column=0)
T.pack()
T.insert(END,"Just a text widget\nin two lines\n")

network.mainloop()

1 个答案:

答案 0 :(得分:0)

您可以使用T功能手动将文本区域place放在弹出框下。 您可以为x和y坐标提供一个值,以便将其放在GUI上的所需位置。

T.place(y = 85)会将其放在弹出框下方。您还可以为其指定 x 值。

您的代码中还有一些其他错误,但我希望这是您正在寻找的内容。