gpt4 book ai didi

java - 启用/禁用 Wicket 口中的按钮

转载 作者:行者123 更新时间:2023-12-02 12:50:54 24 4
gpt4 key购买 nike

我是 Wicket 口开发的初学者。我有一个关于弹出对话框的问题。当我单击按钮时会触发此对话框。

此对话框包含一个复选框(接受条款)和下面的几个单选按钮,以及两个按钮,其中一个是取消 另一个接受

我的问题是,我需要确保我同时选择了复选框和一个单选按钮来将“接受”按钮设置为启用状态,否则应将其密封(启用 = false)。

问题是单选按钮位于不同的文件中(它们位于其他文件的面板内,我们称它们为“CancellationRadioButtons”)。我设法在主对话框中正确渲染它们(在“MainPanel”中添加(cancellationradioButtons))。

问题是,如果复选框单选按钮这两个元素都包含其相应的模型,我如何确保这两个元素都被选中(复选框和一个单选按钮),我的意思是如何将 MainPanelCancellationRadioButtons 进行通信,反之亦然?

例如,当触发对话框时,默认情况下没有选择任何内容,因此“接受”按钮被密封。如果我单击其中一个单选按钮,“接受”按钮将保持密封状态,直到我选中该复选框。如果我选中复选框并且未选择单选按钮,也会发生同样的情况。

我有这两个元素的模型,但我不知道如何传达它们。我在 Accept 按钮中有一个 SetEnabled 方法(现在仅当我选中复选框时才启用),但我不知道如何在两个条件之间建立连接(Checkbox.checked 和 radiobutton selected)

我想在这里发布代码以使其更简单,但由于公司政策,我不能这样做,而且我很难在本地电脑上重现相同的对话框,因为它已经完成了,我'我只是在那里修理东西。

任何有关如何继续此操作的想法,一些提示和简单的示例将不胜感激!

最佳答案

这是像 Wicket 这样的有状态框架的强大之处!你说复选框和单选按钮有自己的模型。解决问题的最简单方法是让这些模型也可供“接受”按钮使用,这样它就可以在其 onConfigure() 中使用它。决定调用 this.setEnabled(...) 时使用什么值.

您可以使用 Wicket 的 CompoundPropertyModel对于对话框,每个子组件都可以使用其中的属性。接受按钮将使用复合模型对象来查看所有属性的值。

或者您可以在对话框构造函数中创建当前单独的模型,并将它们仅传递给需要它们的组件。

关于java - 启用/禁用 Wicket 口中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44618749/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com