изображение като хипервръзка в python / Tkinter

Предполагам, че отговорът е не, но трябва да попитам... Написах wiki в python/tkinter, където хипервръзките се управляват от tkHyperlinkManager (http://effbot.org/zone/tkinter-text-hyperlink.htm) в текстов уиджет. Всичко е идеално, но бих искал също да използвам изображения с възможност за кликване - възможно ли е? Виждам, че хипервръзките работят по тагове и не мога да намеря начин да добавя тагове към изображение

алесандро


person alessandro    schedule 11.05.2012    source източник
comment
Не виждам никаква причина да не можете да създавате изображения, върху които може да се кликне, тъй като Text уиджетите могат да съдържат Tkinter.PhotoImage екземпляра...   -  person mgilson    schedule 11.05.2012
comment
След като разгледах малко повече, мисля, че може да сте прав -- Едно заобиколно решение може да бъде да поставите изображението си в етикет, да вмъкнете етикета с помощта на window_create и след това да свържете вашите обратни извиквания към етикета. (Вероятно бихте могли да хакнете всичко това в tkHyperlinkManager, тествайки дали сте получили PhotoImage или текст)...   -  person mgilson    schedule 11.05.2012


Отговори (1)


tkHyperLinkManager не го поддържа, но е много прост с функциите, които вече са вградени в текстовия уиджет. Всичко, което трябва да направите, е да създадете етикет с вашето изображение, да вградите етикета и да добавите обвързване към етикета.

Например:

import Tkinter as tk
...
image_link = tk.Label(text_widget, image=my_image, cursor="left_ptr")
image_link.bind("<1>", do_something)
text_widget.window_create("insert", window=image_link)
person Bryan Oakley    schedule 11.05.2012