【发布时间】:2012-07-11 16:55:19
【问题描述】:
我在 java 中有一个下拉菜单,其中包含 3 个选项,旁边是一个运行按钮。 我在 java 中使用 eclipse 并使用 apache wicket 和 html 在 web 浏览器中运行程序。我的问题是,如果我从下拉列表中选择打印数据并单击运行按钮,它应该在控制台中打印打印成功。我尝试了各种方法,并对其进行了编译,但没有向我显示根据 system.out.println 语句应该执行的消息。
Button b = new Button("Ausführen");
b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if(role.getValue().equals("Print Data")) {
System.out.println("Printing successfull!");
}
}
});
form.add(b);
任何想法为什么?
【问题讨论】:
-
什么样的对象是形式?是完全调用了 onSubmit 方法,还是不满足 if 条件?那是什么按钮?
-
form 是我在其中添加对象(按钮、下拉菜单)的界面。是否调用了 onSubmit 按钮是什么意思?我也必须在其他地方调用它吗?
-
一般情况下,如果选择的下拉项的值等于xyz,你会怎么写,然后做xyz。
-
你没有调用这个sn-p中的方法。您仅通过匿名类提供实现。这就是为什么我问你是否真的在某个地方(通过监听器或其他方式)调用它。这是 java.awt.Button 还是别的什么?
-
Priya,我在 apache wicket 上工作不多,但我可以说这应该很容易调试 - 首先,在 if 条件之外尝试 sys - 如果你看到打印 - 这意味着 if 条件正在评估为假 - 可能是所选的
String值不完全是“打印数据” - 尝试trim()ming 来自role的字符串值。如果您也没有看到外部打印,这意味着您的actionPerformed()处理程序没有被调用。我会检查单击的按钮是否确实与您附加actionListener的按钮相同。只是一些调试步骤。 HTH。
标签: java