PYTHON -如何将数据输入状态更改为正常?

czfnxgou  于 2022-12-17  发布在  Python
关注(0)|答案(1)|浏览(170)

我可以使用“禁用”按钮禁用日历小部件,但如果我想重新激活它,我会得到以下错误:

tkinter.TclError: unknown option "-normal"

如果我尝试使用calendar.config(state="normal")命令,则会出现以下错误:
x一个一个一个一个x一个一个二个x

9gm1akwq

9gm1akwq1#

查看ttkbootstrap DateEntry小部件的source code可以发现,它继承自ttk.Frame类,而ttk.Frame类本身不接受state更改,但是,由于DateEntry覆盖了内置的configure方法,因此以下状态似乎是允许的:

  • 'disabled'
  • 'readonly'
  • 'invalid'

据我所知,默认的“正常”状态是'readonly',但我不确定。

class DateEntry(ttk.Frame)
...
    def _configure_set(self, **kwargs):
        """Override configure method to allow for setting custom
        DateEntry parameters"""

        if "state" in kwargs:
            state = kwargs.pop("state")
            if state in ["readonly", "invalid"]:
                self.entry.configure(state=state)
            elif state == "disabled":
                self.entry.configure(state=state)
                self.button.configure(state=state)
            else:
                kwargs[state] = state

相关问题