Python tkinter:创建动态下拉菜单,选择后调用不同的动作

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

基本上这就是我想要实现的目标:

  1. 我从 XML 2 列表(应用程序、ID)中检索;

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

  3. 下拉菜单中的 APP 选择将使用其 ID 调用 APP 状态。

我无法得到最后一点的工作,基本上我想我明白为什么(我在两个列表之间没有匹配或匹配它们的函数,并且选择自动调用第二个列表的最后一个 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')


慕码人8056858
浏览 250回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python