java窗体的事件问题
要求设计如下界面,实现华氏摄氏度和摄氏度的转换:我做出来界面是这样的:两个JCheckBox的事件可以实现,但是点下面三个按钮却没反应,我记得Button的事件是写在ac...
要求设计如下界面,实现华氏摄氏度和摄氏度的转换:
我做出来界面是这样的:
两个JCheckBox的事件可以实现,但是点下面三个按钮却没反应,我记得Button的事件是写在actionperformed里没错呀,其他地方应该也没错。。麻烦各位大侠帮忙看看是哪里出了问题呀。。
代码如下:
OK的按钮是button1,Reset是Button2,Close是button3;两个JCheckBox分别是jcb1和jcb2;两个JTextField分别是jtf1和jtf2
@Override
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if(source==button2)
{
jcb1.setSelected(false);
jcb2.setSelected(false);
jtf1.setText("");
jtf2.setText("");
}
if(source==button3)
System.exit(0);
if(source==button1)
{
if(jtf1.isEnabled())
{
double a=Double.parseDouble(jtf1.getText());
a=a*9.0/5+32;
jtf2.setText(Double.toString(a));
}
else
{
double a=Double.parseDouble(jtf2.getText());
a=(a-32)*5/9;
jtf2.setText(Double.toString(a));
}
}
if(source==jtf1)
text=jtf1.getText();
if(source==jtf2)
text=jtf2.getText();
}
} 展开
我做出来界面是这样的:
两个JCheckBox的事件可以实现,但是点下面三个按钮却没反应,我记得Button的事件是写在actionperformed里没错呀,其他地方应该也没错。。麻烦各位大侠帮忙看看是哪里出了问题呀。。
代码如下:
OK的按钮是button1,Reset是Button2,Close是button3;两个JCheckBox分别是jcb1和jcb2;两个JTextField分别是jtf1和jtf2
@Override
public void actionPerformed(ActionEvent e) {
Object source = e.getSource();
if(source==button2)
{
jcb1.setSelected(false);
jcb2.setSelected(false);
jtf1.setText("");
jtf2.setText("");
}
if(source==button3)
System.exit(0);
if(source==button1)
{
if(jtf1.isEnabled())
{
double a=Double.parseDouble(jtf1.getText());
a=a*9.0/5+32;
jtf2.setText(Double.toString(a));
}
else
{
double a=Double.parseDouble(jtf2.getText());
a=(a-32)*5/9;
jtf2.setText(Double.toString(a));
}
}
if(source==jtf1)
text=jtf1.getText();
if(source==jtf2)
text=jtf2.getText();
}
} 展开
3个回答
展开全部
看看这个样板。应该能找到你的错误
import java.awt.BorderLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class JFrameDemo extends JFrame implements ActionListener{
int time=0;
JButton jb=new JButton("click me");
JLabel jl=new JLabel("No. of drinks ordered");
public JFrameDemo(){
this.setSize(900,600);
int width=Toolkit.getDefaultToolkit().getScreenSize().width;
int height=Toolkit.getDefaultToolkit().getScreenSize().height;
this.setLocation((width-900)/2,(height-600)/2);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.add(jb,BorderLayout.NORTH);
this.add(jl,BorderLayout.SOUTH);
jb.addActionListener(this);
this.setVisible(true);
}
public static void main(String[] args) {
new JFrameDemo();
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==jb){
time++;
jl.setText("No. of drinks ordered"+time);
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
代码不完整,我只能猜测下,你有注册监听器到按钮吗?
在这个方法里System.out.printf();一下确保点击按钮是这个方法有执行。
在这个方法里System.out.printf();一下确保点击按钮是这个方法有执行。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的按钮加事件监听了没有?
就是button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
就是button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询