java中把扫描变量变成全局变量_从函数中更改全局变量

背景:我的目标是制作一个计时器来跟踪工作时间后发送的时间页 . 我将原始页面文本粘贴到一个框中,按一个按钮,它将解析这个以获取票证, Headers ,分析师和他们的号码,以及启动计时器以跟踪何时重新发布/升级 . 我们的想法是使用网格和5组变量创建5个可能的行,一次抛出票据信息,最好只使用一个选择第一个可用行的输入框/按钮组合 .

我目前停留在如何设置字符串变量(甚至访问未解析信息的文本框内容)以显示将用于按下按钮的功能中的故障单信息 . 当从函数内部引用时,我会得到一个未定义的错误,即使全局声明它们(我甚至不知道如果/如何使用tkinter小部件并使用.get()?) .

我有一种感觉,我可能正在做一些根本错误的事情,但是我在如何完成这项工作的过程中遇到了很多麻烦 .

主要应用:

from tkinter import *

from newPageEntry import *

#Create window

master = Tk()

master.title('SD Page Time')

master.configure(bg='White')

#Page entry text box setup

newPageTextBox = Entry(master)

newPageTextBox.grid(row=6, column=6)

#page entry button

newPageButton1 = Button(master, text="New Page", width=10, command=newPageEntry(newPageTextBox.get())).grid(row=6, column=7)

#Grid Variables Setup

ticketNumberString1 = StringVar()

analystNameString1 = StringVar()

analystPhoneString1 = StringVar()

ticketTitleString1 = StringVar()

ticketNumberString2 = StringVar()

analystNameString2 = StringVar()

analystPhoneString2 = StringVar()

ticketTitleString2 = StringVar()

ticketNumberString3 = StringVar()

analystNameString3 = StringVar()

analystPhoneString3 = StringVar()

ticketTitleString3 = StringVar()

ticketNumberString4 = StringVar()

analystNameString4 = StringVar()

analystPhoneString4 = StringVar()

ticketTitleString4 = StringVar()

ticketNumberString5 = StringVar()

analystNameString5 = StringVar()

analystPhoneString5 = StringVar()

ticketTitleString5 = StringVar()

新页面模块:

from telalertParse import *

# import timer once made

#gets telalert page raw text from text box, enters it into parser.

#inserts [ticketNumber, analystName, analystNumber, title] into the first available row, clears box

def newPageEntry(telalertPage):

global newPageTextBox

newPageTextBox.delete(0, END)

telalertParseReturn = telalertParse(telalertPage)

ticketNumber = telalertParseReturn[0]

analystName = telalertParseReturn[1]

analystNumber = telalertParseReturn[2]

title = telalertParseReturn[3]

if ticketNumberString1.get() != '':

ticketNumberString1.set(ticketNumber)

analystNameString1.set(analystName)

analystPhoneString1.set(analystNumber)

ticketTitleString1.set(title)

#Start Timer

elif ticketNumberString2.get() != '':

ticketNumberString2.set(ticketNumber)

analystNameString2.set(analystName)

analystPhoneString2.set(analystNumber)

ticketTitleString2.set(title)

#Start Timer

elif ticketNumberString3.get() != '':

ticketNumberString3.set(ticketNumber)

analystNameString3.set(analystName)

analystPhoneString3.set(analystNumber)

ticketTitleString3.set(title)

#Start Timer

elif ticketNumberString4.get() != '':

ticketNumberString4.set(ticketNumber)

analystNameString4.set(analystName)

analystPhoneString4.set(analystNumber)

ticketTitleString4.set(title)

#Start Timer

elif ticketNumberString5.get() != '':

ticketNumberString5.set(ticketNumber)

analystNameString5.set(analystName)

analystPhoneString5.set(analystNumber)

ticketTitleString5.set(title)

#Start Timer

else:

print('Too Many Pages!')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值