如何在组合框中禁用鼠标滚轮事件?

问题描述 投票:0回答:1

考虑这段代码:

global value
ttk::combobox .cb -values {1 2 3 4 5} -textvariable value
pack .cb

当鼠标聚焦在组合框小部件上时,滚动鼠标滚轮将更改该值。如何禁用鼠标滚轮事件?

tcl tk
1个回答
0
投票

Ttk组合框小部件的滚动轮行为由其绑定到<MouseWheel>事件的类决定。要为单个小部件覆盖它(我们不建议为所有组合框小部件更改它!),我们需要添加以下绑定:

bind .cb <MouseWheel> break

在绑定中执行break会在后续绑定标记中停止处理事件,特别是包括类绑定,尽管可能存在其他绑定。 (Widgets的默认绑定标签是窗口小部件的名称,它与窗口小部件的名称相同,窗口小部件的类名称,窗口小部件的顶层设计用于支持热键 - 和all用于全局绑定,偶尔有用但通常不会。)

© www.soinside.com 2019 - 2024. All rights reserved.