У меня есть совершенно функциональное контекстное меню TkInter с правой кнопкой мыши, с 4 пунктами и 1 разделителем, однако я пытаюсь выяснить, как можно отобразить значок для каждого элемента, мне удалось получить элементы для отображения в виде значки, но это удаляет видимость реального текста, что не идеально. Кто-нибудь знает, как заставить текст отображаться справа от иконки?
Я вставлю фрагменты кода и фактическое меню.
try:
def rClick_Copy(e, apnd=0):
e.widget.event_generate('<Control-c>')
def rClick_Cut(e):
e.widget.event_generate('<Control-x>')
def rClick_Paste(e):
e.widget.event_generate('<Control-v>')
def rClick_SelectA(e):
e.widget.select_range(0, 'end')
e.widget.icursor('end')
e.widget.focus()
nclst=[
('Cut', lambda e=e: rClick_Cut(e)),
('Copy', lambda e=e: rClick_Copy(e)),
('Paste', lambda e=e: rClick_Paste(e)),
('Seperator', ''),
('Select All', lambda e=e: rClick_SelectA(e)),
]
rmenu = Menu(None, tearoff=0, takefocus=0)
for (txt, cmd) in nclst:
if txt == 'Seperator':
rmenu.add_separator()
continue
rmenu.add_command(label=txt, command=cmd,) #image=self._img4 <add this in when using icons.
rmenu.tk_popup(e.x_root+40, e.y_root+10,entry="0")
except TclError:
print ' - rClick menu, something wrong'
pass
Меню правого клика:
![The Right Click Menu](https://i.stack.imgur.com/enygS.png)
Меню правого клика с иконками:
![The Right Click Menu With Icons](https://i.stack.imgur.com/HqbXu.png)