JavaSwing学习笔记(一)

一:JFrame(Swing框架类)
package n1;

import java.awt.Color;
import java.awt.Container;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.SwingConstants;

public class MyFrame1 extends JFrame{
    
    public void start() {
        JFrame jf=new JFrame("窗口");
        Container container=jf.getContentPane();
        container.setBackground(Color.white);
        JLabel jl=new JLabel("标签");
        jl.setHorizontalAlignment(SwingConstants.CENTER);
        container.add(jl);
        jf.setVisible(true);
        jf.setSize(300, 200);
        jf.setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
    public static void main(String[] args) {
        MyFrame1 myframe=new MyFrame1();
        myframe.start();
    }
}

运行结果:

JavaSwing学习笔记(一)_第1张图片
image.png


二:JDialog(Java对话框)
package n1;

import java.awt.Color;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;

class MyDialog extends JDialog{
    
    public MyDialog(MyFrame frame) {
        super(frame,"Dialog",true);
        Container container=getContentPane();
        container.add(new JLabel("Hello"));
        container.setBackground(Color.white);
        setBounds(120,120,100,100);
    }
}
public class MyFrame extends JFrame{
    public static void main(String[] args) {
        new MyFrame();
    }
    public MyFrame() {
        Container container=getContentPane();
        container.setLayout(null);
        container.setBackground(Color.white);
        JButton button=new JButton("按钮");
        button.setBounds(33, 33, 80, 30);
        button.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub
                new MyDialog(MyFrame.this).setVisible(true);
            }
        });
        container.add(button);
        setVisible(true);
        setSize(300, 200);
        setDefaultCloseOperation(EXIT_ON_CLOSE);
    }
    
}

运行结果:

JavaSwing学习笔记(一)_第2张图片
image.png


注意事项:

1. 我第一次的时候在一个文件中写了两个public类,报错,且无法执行,
后来百度一下,原来是这样:

  • java程序是从一个public类的main函数开始执行的,(其实是main线程),就像C程序是从main()函数开始执行一样。

  • 一个public 类只能定义在以它的类名为文件名的文件中。public类的名称必须与文件名相同。

  • 每个编译文件都只有一个public 类,就是公共接口。该接口可以按照要求包含众多的支持包访问权限的类。


参考资料:

  • Java从入门到精通
  • https://zhidao.baidu.com/question/148437800.html

你可能感兴趣的:(JavaSwing学习笔记(一))