如何用阿拉伯python tkinter组合框编写标签
# -*- coding: UTF-8 -*-
from tkinter import *
from tkinter.ttk import Combobox
v = ["تصنيفات","نصنيفات"]
combo = Combobox(t, values=v, state="readonly")
combo.place(x=758, y=145)
print combo.get()
结果
╩╒غو▌
答案 0 :(得分:1)
请在文件顶部尝试以下操作:
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
答案 1 :(得分:0)
我无法重现使用python 2.7.15运行以下代码的问题。不需要做任何特殊的处理阿拉伯值。
请注意,Tkinter是事件驱动的,这意味着发生很多事情都在其mainloop()
运行时发生。为了print
的当前值,Combobox
需要定义一个回调函数(以下代码中的value_changed()
),并将其“绑定”到Tkinter每次绑定值生成的虚拟事件上。 Combobox
小部件更改。
#!/usr/bin/env python2
# -*- coding: UTF-8 -*-
from tkinter import *
from tkinter.ttk import Combobox
t = Tk()
t.geometry('1000x600') # Make window big enough to display Combobox.
v = ["تصنيفات","نصنيفات"]
combo = Combobox(t, values=v, state="readonly")
combo.place(x=758, y=145)
def value_changed(event):
""" Combobox callback function. """
print 'combo.get():', combo.get()
combo.bind('<<ComboboxSelected>>', value_changed) # Bind event-handling function.
t.mainloop()
以下是屏幕截图,显示了Combobox
和阿拉伯值的显示: