我对挥杆很陌生,在处理JFrame
时遇到问题,所以我想你们可以帮忙。如何使用Swing创建简单的Java表单?
我想使一个简单的窗口显示3个文本字段和一个复选框。在底部应该有一个“完成”按钮来关闭表单。
我可以让JFrame
与JTextField
S和JCheckBox
,但我怎么检索输入?
在此先感谢
我对挥杆很陌生,在处理JFrame
时遇到问题,所以我想你们可以帮忙。如何使用Swing创建简单的Java表单?
我想使一个简单的窗口显示3个文本字段和一个复选框。在底部应该有一个“完成”按钮来关闭表单。
我可以让JFrame
与JTextField
S和JCheckBox
,但我怎么检索输入?
在此先感谢
正如Swing tutorial说,你可以将ActionListener
添加到JButton
,当按钮被按下,这将被调用。
为了取回JTextField
的文本,使用JTextField#getText()
方法
要确定JCheckBox
是否实际选择,使用JCheckBox#isSelected()
方法
但是一个很好的出发点读Swing tutorial from the start
谢谢,但我如何获得复选框输入?有什么办法让它作为一个布尔值?我刚刚学会了如何制作复选框,但对它们一无所知 – 2012-01-07 19:23:46
@MeshulamSilk我刚更新了我的答案,因为我看到我错过了'JCheckBox' – Robin 2012-01-07 19:25:13
谢谢!我会检查出这个链接,找出如何添加一个actionlistener到按钮,我应该很好去! – 2012-01-07 19:27:00
如果你会发布一些代码来显示你的JFrame
,那么我会给你一个更具体的例子。
一般而言,您将拥有一个扩展了JFrame
,JDialog
等的类。在该类中,您将拥有获取和设置表单上控件值的getter和setter。
在你的情况下,点击“完成”后,你可以在“完成”按钮或框架本身(监听关闭事件)上获取监听器,从表单中检索值并对其执行操作。
如果这不明确,请发布一些代码,也许我可以给你一个具体的例子。
public class MyFrame extends JFrame {
private JTextField textField = new JTextField();
private JButton doneBtn = new JButton("Done");
// rest of your form
}
如果你想在按下doneBtn
拿到textField
的内容,你需要一个事件侦听器 附加到按钮:
public class MyFrame extends JFrame {
private JTextField textField = new JTextField();
private JButton doneBtn = new JButton("Done");
public MyFrame() {
// Here we attach an event listener to the button.
// Whenever you press the button, the code inside actionPerformed will be executed
doneBtn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent ae) {
System.out.println(textField.getText()); // Or do whatever you like
}
});
}
// rest of your form
}
但是,说实话,你应该学会这个你自己。如果你还没有阅读关于复选框的教程,当然你不会知道它们是如何工作的。先阅读,如果您有问题,请寻求帮助。你还没有读够,但你问的问题。
我其实确实环顾四周,但我找不到足够清晰的解释,让我知道该怎么做。我知道我可以从愿意帮助这里的人找到一个很好的答案,所以我来了,我得到了我的答案。谢谢你的帮助,如果我浪费了你的时间,我很抱歉。 – 2012-01-07 19:39:32
不客气,不,你没有浪费我的时间。但是,这在我见过的所有Swing书籍中都有解释。 – Behrang 2012-01-07 19:46:25
啊......嗯,我还在上学,我正在制作一个游戏(涉及这个表格)作为一个额外点的副项目。我们不需要知道教育部门通过Swing来传递计算机科学,因此了解它的唯一地方就是互联网(英文的Java书很难在这里找到)。 下次我出国时,我会确保购买某种书。有什么建议么? – 2012-01-07 20:08:03
考虑使用'JDialog'而不是'JFrame'。任何结束*“在底部应该有一个”完成“按钮,它关闭了窗体”*强烈地向我建议一个对话框。 – 2012-01-08 02:37:55