我想做一个编码进制转换器,但是遇到了一些问题。就是我想在输入文字之后,立刻输出解码或者编码后的内容,就是输入与输出同步
我的代码如下
e = tk.Entry(self.initface)
e.pack()
def go(*args): # 处理事件,*args 表示可变参数
# e.delete(0, 'END')
# URL 解码
if comboxlist.get() == 'URL':
var = e.get()
t.insert('end',unquote(var))
# base64 解码
if comboxlist.get() == 'Base64':
var = e.get()
t.insert('end',base64.b16decode(var))
# 将转换成 16 进制
if comboxlist.get() == 'Hex':
var = e.get()
t.delete(1.0,'end')
t.insert('end',hex(int(var)))
# 将转换成 8 进制
if comboxlist.get() == 'Octal':
var = e.get()
t.insert('end',oct(var))
# 将转换成 2 进制
if comboxlist.get() == 'Binary':
var = e.get()
t.insert('end',bin(var))
comvalue = tk.StringVar() # 窗体自带的文本,新建一个值
comboxlist = ttk.Combobox(self.initface, textvariable=comvalue, state='readonly') # 初始化
comboxlist["values"] = ('Decode as', "URL", "Base64", "Hex", "Octal",'Binary')
comboxlist.current(0) # 选择第一个
comboxlist.bind("<<ComboboxSelected>>", go) # 绑定事件,(下拉列表框被选中时,绑定 go()函数)
comboxlist.pack()
t = tk.Text(self.initface,height = 4)
t.pack()
类似这样的,但这个是 java 的代码
请问各位师傅该如何做到这样的效果
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.