繁体   English   中英

swt单选按钮的通用侦听器

[英]generic listeners for swt radio buttons

我正在开发SWT应用程序,在一种特殊形式下,有14对“是/否”单选按钮。 这些对中的每对都有一个与之关联的文本框。 因此,如果用户选择是,则关联的文本框应可编辑,否则不可编辑。 我发现为单选按钮编写28个听众确实令人生畏。 由于单选按钮只需要使文本框可编辑/不可编辑就无济于事,所以我希望SWT中是否有某种通用类型的侦听器适用于在数组中指定的一组单选按钮或类似的设置。 是否有任何框架,或者我必须编写个人侦听器?

编辑
我仅在选择单选按钮时才尝试触发事件

rdoExperience.addListener(SWT.CHECK, new RadioButtonSelection( txtExperience));

但是SWT.CHECK也会导致事件在鼠标悬停在单选按钮上时触发。 我也尝试过使用SWT.SELECTED,但是它也不起作用,也找不到其他合适的SWT常量。 我应该用什么?

好点子。 对不起,我不知道这样的事。

但是,您可以自己创建一个:不必为每个按钮编写匿名侦听器,而是可以编写一个(例如MyButtonListener )并将 按钮 文本框作为参数。 比起用适当的文本框作为参数实例化MyButtonListener 比在侦听器中适当的回调方法中,您可以启用或禁用文本框。

编辑:我不好。 当然,我的意思是您可以给它输入文本框,例如radioBtn.addListener(SWT.SELECTED, new MyButtonListener(textfield1));

您可以创建一个SelectionListener并将其添加到每个单选按钮中。 然后,您可以确定从选择事件中按下了哪个按钮,并将其映射到文本框。 对于映射,您可以使用数组或哈希表。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM