m0_47731808 2021-05-28 16:34 采纳率: 100%
浏览 151
已采纳

Java-GUI界面编译成功但什么都不显示

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.TitledBorder;
import javax.swing.border.Border;

class MyFrame extends JPanel implements ActionListener
{
		JFrame  jfrm= new JFrame();
	 public void actionPerformed(ActionEvent e)
	 {
	 	}

		MyFrame() {
			//Set the panel and choosing area

			JPanel jpan1 = new JPanel();
			jpan1.setBorder(BorderFactory.createTitledBorder("Date of Birth"));

			JPanel jpan2 = new JPanel();
			jpan2.setBorder(BorderFactory.createTitledBorder("Date of Birth"));

			JPanel jpan3 = new JPanel();
			jpan3.setBorder(BorderFactory.createTitledBorder("Programme"));

			JPanel jpan4 = new JPanel();
			jpan4.setBorder(BorderFactory.createTitledBorder("Email"));

			JPanel jpan5 = new JPanel();
			jpan5.setBorder(BorderFactory.createTitledBorder("Phone number"));

			JPanel jpan6 = new JPanel();
			jpan6.setBorder(BorderFactory.createTitledBorder("Booking reference code"));

			JPanel jpan7 = new JPanel();
			JPanel jpan8 = new JPanel();
			JPanel jpanName1 = new JPanel();
			jpanName1.setBorder(BorderFactory.createTitledBorder("First Name"));

			JPanel jpanName2 = new JPanel();
			jpanName2.setBorder(BorderFactory.createTitledBorder("Surname"));

			JPanel jpanMonth = new JPanel();
			jpanMonth.setBorder(BorderFactory.createTitledBorder("Month"));

			JPanel jpanYear = new JPanel();
			jpanYear.setBorder(BorderFactory.createTitledBorder("Year"));

			JButton bt1 = new JButton("Next step");
			JButton bt2 = new JButton("Clear");
			JButton bt3 = new JButton("Exit");
			JTextField JTextFirst = new JTextField();
			JTextField JTextSur = new JTextField();
			JTextField JTextEmail = new JTextField();
			JTextField JTextNumber = new JTextField();
			JTextField JTextCode = new JTextField();
			JCheckBox Box1 = new JCheckBox("I have red and agree to the terms and conditions");
			JCheckBox Box2 = new JCheckBox("I confirm that the information provided is correct");


//Set the Year/Month in JComboBox

			String[] arr1 = new String[8];
			for (int i = 0; i < 8; i++) {
				arr1[i] = String.valueOf(i + 1998);
			}
			String[] arr2 = new String[12];
			for (int i = 0; i < 12; i++) {
				arr2[i] = String.valueOf(i + 1);
			}

			JComboBox Month = new JComboBox(arr2);
			JComboBox BirthYear = new JComboBox(arr1);

//Set the major and year

			String[] arrMajor = new String[2];
			arrMajor[0] = "Telecommunications Engineering with Management";
			arrMajor[1] = "Other Majors";
			String[] arrYear = new String[4];
			for (int i = 0; i < 4; i++) {
			arrYear[i] = String.valueOf(i + 1);
			}
			JComboBox Major = new JComboBox(arrMajor);
			JComboBox stuYear = new JComboBox(arrYear);


			jpan1.add(jpanName1);
			jpan1.add(jpanName2);
			jpanName1.add(JTextFirst);
			jpanName2.add(JTextSur);

			jpan2.add(jpanMonth);
			jpan2.add(jpanYear);
			jpanMonth.add(Month);
			jpanYear.add(BirthYear);

			jpan3.add(Major);
			jpan3.add(stuYear);

			jpan4.add(JTextEmail);

			jpan5.add(JTextNumber);

			jpan6.add(JTextCode);

			jpan7.add(Box1);
			jpan7.add(Box2);

			jpan8.add(bt1);
			jpan8.add(bt2);
			jpan8.add(bt3);
		


		}

}


public class CheckIn extends JFrame{

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		MyFrame jfrm = new MyFrame();
		jfrm.setLayout(new GridLayout(1,9));
		jfrm.setVisible(true);
	}

}
  • 写回答

2条回答 默认 最新

  • 关注

    帮你修改了一下代码,但还有很多问题,可以显示了:

    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    
    class MyFrame extends JFrame implements ActionListener {
    
    	public void actionPerformed(ActionEvent e) {
    	}
    
    	public MyFrame() {
    		setLayout(new GridLayout(1, 9));
    		JPanel jpan1 = new JPanel();
    		jpan1.setBorder(BorderFactory.createTitledBorder("Date of Birth"));
    
    		JPanel jpan2 = new JPanel();
    		jpan2.setBorder(BorderFactory.createTitledBorder("Date of Birth"));
    
    		JPanel jpan3 = new JPanel();
    		jpan3.setBorder(BorderFactory.createTitledBorder("Programme"));
    
    		JPanel jpan4 = new JPanel();
    		jpan4.setBorder(BorderFactory.createTitledBorder("Email"));
    
    		JPanel jpan5 = new JPanel();
    		jpan5.setBorder(BorderFactory.createTitledBorder("Phone number"));
    
    		JPanel jpan6 = new JPanel();
    		jpan6.setBorder(BorderFactory.createTitledBorder("Booking reference code"));
    
    		JPanel jpan7 = new JPanel();
    		JPanel jpan8 = new JPanel();
    		JPanel jpanName1 = new JPanel();
    		jpanName1.setBorder(BorderFactory.createTitledBorder("First Name"));
    
    		JPanel jpanName2 = new JPanel();
    		jpanName2.setBorder(BorderFactory.createTitledBorder("Surname"));
    
    		JPanel jpanMonth = new JPanel();
    		jpanMonth.setBorder(BorderFactory.createTitledBorder("Month"));
    
    		JPanel jpanYear = new JPanel();
    		jpanYear.setBorder(BorderFactory.createTitledBorder("Year"));
    
    		JButton bt1 = new JButton("Next step");
    		JButton bt2 = new JButton("Clear");
    		JButton bt3 = new JButton("Exit");
    		JTextField JTextFirst = new JTextField();
    		JTextField JTextSur = new JTextField();
    		JTextField JTextEmail = new JTextField();
    		JTextField JTextNumber = new JTextField();
    		JTextField JTextCode = new JTextField();
    		JCheckBox Box1 = new JCheckBox("I have red and agree to the terms and conditions");
    		JCheckBox Box2 = new JCheckBox("I confirm that the information provided is correct");
    
    //Set the Year/Month in JComboBox
    
    		String[] arr1 = new String[8];
    		for (int i = 0; i < 8; i++) {
    			arr1[i] = String.valueOf(i + 1998);
    		}
    		String[] arr2 = new String[12];
    		for (int i = 0; i < 12; i++) {
    			arr2[i] = String.valueOf(i + 1);
    		}
    
    		JComboBox Month = new JComboBox(arr2);
    		JComboBox BirthYear = new JComboBox(arr1);
    
    
    		String[] arrMajor = new String[2];
    		arrMajor[0] = "Telecommunications Engineering with Management";
    		arrMajor[1] = "Other Majors";
    		String[] arrYear = new String[4];
    		for (int i = 0; i < 4; i++) {
    			arrYear[i] = String.valueOf(i + 1);
    		}
    		JComboBox Major = new JComboBox(arrMajor);
    		JComboBox stuYear = new JComboBox(arrYear);
    
    		jpan1.add(jpanName1);
    		jpan1.add(jpanName2);
    		jpanName1.add(JTextFirst);
    		jpanName2.add(JTextSur);
    
    		jpan2.add(jpanMonth);
    		jpan2.add(jpanYear);
    		jpanMonth.add(Month);
    		jpanYear.add(BirthYear);
    
    		jpan3.add(Major);
    		jpan3.add(stuYear);
    
    		jpan4.add(JTextEmail);
    
    		jpan5.add(JTextNumber);
    
    		jpan6.add(JTextCode);
    
    		jpan7.add(Box1);
    		jpan7.add(Box2);
    
    		jpan8.add(bt1);
    		jpan8.add(bt2);
    		jpan8.add(bt3);
    		add(jpan1);
    		add(jpan2);
    		add(jpan3);
    		add(jpan4);
    		add(jpan5);
    		add(jpan6);
    		add(jpan7);
    		add(jpan8);
    		
    		setSize(500,500);
    		setVisible(true);
    		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		setLocationRelativeTo(null);
    
    	}
    
    
    	public static void main(String[] args) {
    		new MyFrame();
    	}
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵