PerrySenior 2021-06-18 15:32 采纳率: 58.3%
浏览 37
已采纳

Java求按钮点击,求方法

package exam.pengbozuishuai;

import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class GUIDemo02 extends JFrame implements ActionListener {
	
	public GUIDemo02() {
		this.setTitle("温度转换");
		this.setSize(350, 300);
		
		
		JTextField a = new JTextField(5);
		JPanel j1 = new JPanel();
		JLabel j1Label = new JLabel("摄氏度=");
		j1.add(a);
		j1.add(j1Label);
		
		
		
		JTextField b = new JTextField(5);
		JPanel j2 = new JPanel();
		JLabel j2Label = new JLabel("华氏度");
		j1.add(b);
		j1.add(j2Label);
		
		JPanel j3 = new JPanel();
		JButton inbox = new JButton("温度转换");
		JButton inbox2 = new JButton("退出");
		j3.add(inbox);
		j3.add(inbox2);
		
		
		this.setLayout(new GridLayout(4, 1));
		this.add(j1);
		this.add(j2);
		this.add(j3);
		this.setVisible(true);
	}
	public static void main(String[] args) {
		new GUIDemo02();
	}
	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO 自动生成的方法存根
		
	}
	

}

如图,华氏温度=摄氏温度*1.8+32。求方法

  • 写回答

2条回答 默认 最新

  • CSDN专家-Fay 2021-06-18 15:39
    关注

    要看到你摄氏度文本框的对象名称才能写出代码,你把代码贴完整点

    public class GUIDemo02 extends JFrame implements ActionListener {
    	
    	//将文本框和按钮提到全局
    	JTextField a, b;
    	JButton inbox;
    
    	public GUIDemo02() {
    		this.setTitle("温度转换");
    		this.setSize(350, 300);
    
    		a = new JTextField(5);
    		JPanel j1 = new JPanel();
    		JLabel j1Label = new JLabel("摄氏度=");
    		j1.add(a);
    		j1.add(j1Label);
    
    		b = new JTextField(5);
    		JPanel j2 = new JPanel();
    		JLabel j2Label = new JLabel("华氏度");
    		j1.add(b);
    		j1.add(j2Label);
    
    		JPanel j3 = new JPanel();
    		inbox = new JButton("温度转换");
    		JButton inbox2 = new JButton("退出");
    		j3.add(inbox);
    		j3.add(inbox2);
    
    		inbox.addActionListener(this);//给按钮添加监听
    
    		this.setLayout(new GridLayout(4, 1));
    		this.add(j1);
    		this.add(j2);
    		this.add(j3);
    		this.setVisible(true);
    	}
    
    	public static void main(String[] args) {
    		new GUIDemo02();
    	}
    
    	@Override
    	public void actionPerformed(ActionEvent e) {
    		// TODO 自动生成的方法存根
    		if (e.getSource() == inbox) {
    			int she = Integer.parseInt(a.getText());//获取摄氏度文本框的内容并转换成整型
    			float f = (float) (she * 1.8 + 32); //摄氏度按公式转换成华氏度
    			b.setText(f + "");//将结果设置给华氏度文本框
    		}
    	}
    
    }
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效