可以向 tk 中的小部件添加新状态吗?
It's possible add new states to widgets in tk?
可以向小部件的默认状态添加额外的状态吗?。
例如,有时使用 tk (ttk) 中的样式来配置小部件的选项非常有限。然而,使用命令 ttk::style map 和(如果可能的话)定义额外的状态,将很容易配置它。
低级状态管理引擎将状态映射到整数位。支持状态的完整列表是(这是直接从 C 代码中提取的信息;这完全是基本事实):
- active — Mouse cursor is over widget or element
- disabled — Widget is disabled
- focus — Widget has keyboard focus
- pressed — Pressed or “armed”
- selected — “on”, “true”, “current”, etc.
- background — Top-level window lost focus (Mac, Win “inactive”)
- alternate — Widget-specific alternate display style
- invalid — Bad value
- readonly — Editing/modification disabled
- hover — Mouse cursor is over widget
- reserved1 — Reserved for future extension
- reserved2 — Reserved for future extension
- reserved3 — Reserved for future extension
- user3 — User-definable state
- user2 — User-definable state
- user1 — User-definable state
查看该列表,我猜想特别是 user1、user2 和 user3 可用于您的额外状态。定义更多需要对 C 代码进行自定义更改,但您有三个权利可以继续进行。
我想在紧要关头,也可以使用 reserved1…reserved3。一想到 UI 需要那么多不同的独立状态描述符是多么复杂,我就不寒而栗,但它们就在那里,我真的怀疑 Ttk 很快就会大量使用它们。 (如果你经常使用这种东西,一定要写信给 Tk 的开发者,让他们知道这件事;这有助于说服人们不要“优化”掉这些东西,特别好的用途可能会导致到正式命名的状态位。)
请不要重新发明任何现有州旗的含义。没有它,一切都已经够混乱了!
可以向小部件的默认状态添加额外的状态吗?。
例如,有时使用 tk (ttk) 中的样式来配置小部件的选项非常有限。然而,使用命令 ttk::style map 和(如果可能的话)定义额外的状态,将很容易配置它。
低级状态管理引擎将状态映射到整数位。支持状态的完整列表是(这是直接从 C 代码中提取的信息;这完全是基本事实):
- active — Mouse cursor is over widget or element
- disabled — Widget is disabled
- focus — Widget has keyboard focus
- pressed — Pressed or “armed”
- selected — “on”, “true”, “current”, etc.
- background — Top-level window lost focus (Mac, Win “inactive”)
- alternate — Widget-specific alternate display style
- invalid — Bad value
- readonly — Editing/modification disabled
- hover — Mouse cursor is over widget
- reserved1 — Reserved for future extension
- reserved2 — Reserved for future extension
- reserved3 — Reserved for future extension
- user3 — User-definable state
- user2 — User-definable state
- user1 — User-definable state
查看该列表,我猜想特别是 user1、user2 和 user3 可用于您的额外状态。定义更多需要对 C 代码进行自定义更改,但您有三个权利可以继续进行。 我想在紧要关头,也可以使用 reserved1…reserved3。一想到 UI 需要那么多不同的独立状态描述符是多么复杂,我就不寒而栗,但它们就在那里,我真的怀疑 Ttk 很快就会大量使用它们。 (如果你经常使用这种东西,一定要写信给 Tk 的开发者,让他们知道这件事;这有助于说服人们不要“优化”掉这些东西,特别好的用途可能会导致到正式命名的状态位。)
请不要重新发明任何现有州旗的含义。没有它,一切都已经够混乱了!