Как настроить всплывающие подсказки в wxpython?

Я пытался добавить всплывающая подсказка для отображения полного содержимого усеченного ObjectListView, пока не выяснилось, что в нем есть такая встроенная функция:

enter image description here

Я пробовал создавать свои собственные подсказки, используя wx.TipWindow, wx.PopupWindow и SuperToolTip, но ни один из них выглядел так же «родным», как этот.

enter image description hereenter image description here

Хотя я знаю об этой вики-статье , которая предположительно включает всплывающую подсказку для усеченных wx.Listrctrls, я действительно не понимал, как заставить ее работать. Я также ожидаю, что он работает только тогда, когда что-то усечено, тогда как я хотел бы иметь возможность использовать его для отображения дополнительной информации.

Думаю, SuperToolTip подходит близко, но когда вы удаляете «заголовок», он оставляет его с пустым пространством вверху, вместо того, чтобы центрировать текст в середине всплывающей подсказки и подгонять его.

Я попытался просмотреть исходный код ObjectListView, SuperToolTip и wxpython, чтобы попытаться понять, как создаются всплывающие подсказки,но я не могу найти низкоуровневые части, благодаря которым это происходит.

Так как я могу настроить всплывающие подсказки, чтобы они больше походили на собственные всплывающие подсказки?

Код для создания моих текущих всплывающих окон был:

text = "I'm a popup"

class PopUp(wx.TipWindow):
    def __init__(self, parent, text):
        wx.TipWindow.__init__(self, parent, text)

class PopUp2(wx.PopupWindow):
    def __init__(self, parent, text):
        wx.PopupWindow.__init__(self, parent)
        st = wx.StaticText(self, parent, text)

# Import `from agw import supertooltip as STT`
popup3 = STT.SuperToolTip(text)

7
задан Ivo Flipse 20 June 2011 в 17:31
поделиться