java在带有ActionListener和ifelse语句Jbutton的JFrame上使用JTextFields、JButtons和JLabels不起作用
我是Java新手,正在尝试做我的第一个项目。下面的代码有一个按钮,当点击时,什么都不会发生。我正在处理Eclipse,没有抛出异常
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class MTV extends JFrame implements ActionListener {
public JTextField kutucuk1, kutucuk2, kutu3;
public JLabel kutu1, kutu2;
public JButton buton1;
int yas, motorhacmi;
public MTV() {
setLayout(new GridLayout (3,3));
kutu1 = new JLabel("Aracınızın yası");
kutucuk1 = new JTextField(yas);
kutu2 = new JLabel("Aracınızın Motor Hacmi");
kutucuk2 = new JTextField(motorhacmi);
buton1 = new JButton("Hesapla");
kutu3 = new JTextField();
setTitle("MTV Hesaplama");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(600, 500);
setVisible(true);
add(kutu1);
add(kutucuk1);
add(kutu2);
add(kutucuk2);
add(buton1);
add(kutu3);
buton1.addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
yas = Integer.parseInt(kutucuk1.getText().toString());
motorhacmi = Integer.parseInt(kutucuk2.getText().toString());
if (motorhacmi <= 1300 && (yas <=3 && yas >=1)) {
kutu3.setText("Ödenecek vergi 743");
}
else if ((motorhacmi > 1300 && motorhacmi <= 1600) && (yas <=3 && yas >=1)) {
kutu3.setText("Ödenecek vergi 1294");
}
}
public static void main(String[] args) {
MTV mtv = new MTV();
}
}
# 1 楼答案
或者向JTextFields添加大小,并在创建窗格之前将所有元素的位置更改为:
# 2 楼答案
试试这个链接Eclipse Gui 如果你使用的是eclipse,那么不要创建文本字段和按钮以及所有这些组件,你只需要拖放,当你选择和组件时,代码已经写好了