【发布时间】:2016-05-11 15:36:25
【问题描述】:
我在我的应用程序中使用this ttk calendar。
我想要做的是使用datetime.date 实例设置日历,以便在日历出现时突出显示指定的日期。
我想我可以通过手动 text 和 bbox args 的 _show_selection 方法。为了验证这个想法,我将这一行放在__init__ 方法的末尾:
self._show_selection('%02d'%16,(42,61,41,20))
我希望它会突出显示本月 16 日(5 月),但它没有。
我在 _pressed 方法中运行 print text, bbox 得到了参数。
如果有人能对此有所了解,我将不胜感激。
【问题讨论】:
-
我也很疑惑。我把` print((text, textw, bbox, canvas['background'], x, y, canvas['width'], canvas['height'], canvas.text), '\n', (self. _calendar, canvas.coords(canvas.text), canvas.itemcget(canvas.text, 'text'))) ` 在 _show_selection 的末尾,一切都是一样的。我还在
__init__中添加的调用之前添加了`self._selection = ('16', 'I004', '#2')`,以匹配_pressed中的行。我什至从 _setup_selection 中添加了 `self._canvas.place_forget()。 -
我也尝试了`self._canvas.event_generate('
', x=50, y=73) self._calendar.event_generate(' ', x= 50, y=73) . I putprint(evt.x, evt.y, evt.widget)` 在_pressed的顶部,以验证它是否在启动时使用基本相同的事件调用。还是不行。