python 菜单调用不同界面_pythontkinter:创建一个动态下拉菜单,并在选择后调用不同的操作...

我对python很陌生,这是我第一次使用tkinter,所以我希望有人能帮助我找到正确的方向。在

基本上这就是我想要达到的目标:我从XML 2列表(应用程序、ID)中检索

应用列表将显示在下拉菜单中

下拉菜单中的应用程序选择将使用其ID调用应用程序状态

我不能得到最后一点的工作,基本上我想我明白为什么(我没有匹配两个列表或一个匹配它们的函数,选择自动调用第二个列表的最后一个ID),但据我所知,我无法解决它。在import requests

import xml.etree.ElementTree as ET

import tkinter as tk

APP_OPTIONS = []

ID_OPTIONS = []

session = requests.Session()

session.auth = ('USER', 'PW')

applications = session.get('https://getapplicationslist.myurl.com/application/')

applications_xml = applications.content

root = ET.fromstring(applications_xml)

for application in root.findall('application'):

app_name = application.find('name').text

app_id = application.find('id').text

APP_OPTIONS.append(app_name)

ID_OPTIONS.append(app_id)

def appcall(*args):

app_status = session.get('https://getapplicationstatus.myurl.com?Id=' + app_id)

status_xml = app_status.content

root = ET.fromstring(status_xml)

for appStatus in root.findall('appStatus'):

status = appStatus.find('status').text

print(status)

root = tk.Tk()

root.title('Application List')

root.geometry("300x200")

var =tk.StringVar(root)

var.set('Choose an Application')

var.trace('w', appcall)

dropDownMenu = tk.OptionMenu(root, var, *APP_OPTIONS)

dropDownMenu.pack()

root.mainloop()

print('End Request')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
创建一个动态下拉菜单,在Python可以使用Tkinter库。以下是一个简单的例子,其下拉菜单的选项是从一个列表获取的,并且当选择不同的选项时,将打印出相应的参数。 ```python import tkinter as tk def on_select(value): print(value) root = tk.Tk() options = ['Option 1', 'Option 2', 'Option 3'] variable = tk.StringVar(root) variable.set(options[0]) dropdown = tk.OptionMenu(root, variable, *options, command=on_select) dropdown.pack() root.mainloop() ``` 在这个例子,我们首先定义了一个on_select函数,它将在选择不同菜单选项时被调用。然后我们创建了一个根Tkinter窗口,并定义了一个包含所有选项的列表。接下来,我们创建了一个StringVar变量,并将其设置为列表的第一个选项。最后,我们创建了一个OptionMenu,它将显示在窗口上,并将我们的StringVar变量作为其选项之一。我们还将on_select函数作为命令参数传递,以便在选择不同的选项时调用它。 要根据选择菜单选项传递不同的参数,您可以在on_select函数添加逻辑来检查所选的选项,并相应地设置参数。例如: ```python def on_select(value): if value == 'Option 1': param = 'Parameter 1' elif value == 'Option 2': param = 'Parameter 2' else: param = 'Parameter 3' print(param) ``` 在这个例子,我们检查所选的选项,并相应地设置param变量。然后我们打印出这个参数。您可以根据需要修改这个函数,以便执行任何其他任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值