zoukankan      html  css  js  c++  java
  • java 编写小工具 尝试 学习(六)

    1、java 布局管理器-布局管理器之null布局(空布局) 的 学习,参考大神教程:http://www.cnblogs.com/liaoliao/p/5009445.html

    import javax.swing.JButton;
    import javax.swing.JCheckBox;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JList;
    import javax.swing.JPanel;
    import javax.swing.JPasswordField;
    import javax.swing.JRadioButton;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    import javax.swing.SwingConstants;
    import javax.swing.WindowConstants;
    
    public class SuoZhangFrame extends JFrame
    {
        public SuoZhangFrame(String title)
        {
            this.setTitle(title);//设置窗口标题
            
            //这句代码是当用户关闭窗口的时候关掉应用程序
            this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            
            this.setSize(800, 600);//设置长和宽,最常见的屏幕分辨率 1366*768,2017年3月9日09:31:24
            
            this.setLocation(100,100);//设置起点位置,屏幕右上角 为(0,0)
            
            this.setVisible(true); //设置窗口的可见性
            
            
            //设置窗体为空布局,2017年3月9日14:04:26
            this.setLayout(null);
            
            //创建一个单行文本对象
            JTextField textfield =new JTextField("请输入要发送的消息");
            
            //添加这个 单行文本 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个单行文本控件
            this.getContentPane().add(textfield);
            
            //设置 "单行文本"的精确位置(x,y,width,height)
            textfield.setBounds(60,30,180,35);
            
            //创建一个按钮1对象
            JButton button1 =new JButton("发送");
            
            //添加这个 按钮1 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个单行文本控件
            this.getContentPane().add(button1);
            
            //设置 "按钮1"的精确位置(x,y,width,height)
            //注意 Y ==85 是大于 textfield的 Y 值+height 值,这样两个容器才不会重叠
            button1.setBounds(60,85,105,35);
            
    //        //创建一个面板对象,这个面板就是一个组件容器
    //        JPanel pan = new JPanel();
    //        
    //        //添加 容器
    //        this.add(pan);
    //        
    //        //创建一个标签对象
    //        JLabel label =new JLabel("测试标签",null,SwingConstants.RIGHT);
    //        
    //        //添加这个 标签 lable 对象 到面板上
    //        pan.add(label);
    //        
    //        //创建一个单行文本对象
    //        JTextField textfield =new JTextField("测试单行文本输入框");
    //        
    //        //添加这个 单行文本 对象 到面板上
    //        pan.add(textfield);
    //        
    //        //创建一个 单行文本密码输入框 对象
    //        JPasswordField passwordfield =new JPasswordField("123456");//默认密码 123456
    //        
    //        //添加这个 单行文本密码输入框 对象 到面板上
    //        pan.add(passwordfield);
    //        
    //        //创建一个 显示纯文本的多行区域 对象
    //        JTextArea textarea =new JTextArea("测试显示纯文本的多行区域");
    //        
    //        //添加这个 显示纯文本的多行区域 对象 到面板上
    //        pan.add(textarea);
    //        
    //        //创建一个按钮对象
    //        JButton button =new JButton("测试按钮");
    //        
    //        //添加这个 BUTTON 对象 到面板上
    //        pan.add(button);
    //        
    //        //创建一个单选按钮对象
    //        JRadioButton jradiobutton =new JRadioButton("测试单选按钮");
    //        
    //        //添加这个 jradiobutton 对象 到面板上
    //        pan.add(jradiobutton);
    //        
    //        //创建一个多选按钮对象
    //        JCheckBox jchackbox =new JCheckBox("测试多选按钮");
    //        
    //        //添加这个 jchackbox 对象 到面板上
    //        pan.add(jchackbox);
            
            //创建一个列表对象,list 需要 设置内容,暂时还不会,2017年3月9日10:15:44
            //JList jlist =new JList("测试列表");
            
            //添加这个 jlist 对象 到面板上
            //pan.add(jlist);
            
            //创建一个下拉列表对象,JComboBox 需要 设置内容,暂时还不会,2017年3月9日10:15:44
            //JComboBox jcombobox =new JComboBox("测试下拉列表");
            
            //添加这个 jcombobox 对象 到面板上
            //pan.add(jcombobox);
        }
    }
    public class UsartControl
    {
    
        public static void main(String[] args)
        {
            // TODO Auto-generated method stub
            
            SuoZhangFrame frame = new SuoZhangFrame("网点控制器网络模拟器 V1.0");
    
        }
    
    }

    运行效果图:

    import javax.swing.JButton;
    import javax.swing.JCheckBox;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JList;
    import javax.swing.JPanel;
    import javax.swing.JPasswordField;
    import javax.swing.JRadioButton;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    import javax.swing.SwingConstants;
    import javax.swing.WindowConstants;
    
    public class SuoZhangFrame extends JFrame
    {
        public SuoZhangFrame(String title)
        {
            this.setTitle(title);//设置窗口标题
            
            //这句代码是当用户关闭窗口的时候关掉应用程序
            this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            
            this.setSize(800, 600);//设置长和宽,最常见的屏幕分辨率 1366*768,2017年3月9日09:31:24
            
            this.setLocation(100,100);//设置起点位置,屏幕右上角 为(0,0)
            
            this.setVisible(true); //设置窗口的可见性
            
            
            //设置窗体为空布局,2017年3月9日14:04:26
            this.setLayout(null);
            
            //创建一个单行文本对象
            JTextField textfield =new JTextField("请输入要发送的消息");
            
            //添加这个 单行文本 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个单行文本控件
            this.getContentPane().add(textfield);
            
            //设置 "单行文本"的精确位置(x,y,width,height)
            textfield.setBounds(60,30,180,35);
            
            //创建一个按钮1对象
            JButton button1 =new JButton("发送");
            
            //添加这个 按钮1 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个按钮1
            this.getContentPane().add(button1);
            
            //设置 "按钮1"的精确位置(x,y,width,height)
            //注意 Y ==85 是大于 textfield的 Y 值+height 值,这样两个控件才不会重叠
            button1.setBounds(60,85,105,35);
            
            //创建一个标签对象
            JLabel label =new JLabel("接收消息显示区域");
            
            //添加这个 标签 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个标签 
            this.getContentPane().add(label);
            
            //设置 "标签对象"的精确位置(x,y,width,height)
            //注意 Y ==85 是大于 button1 的 Y 值+height 值,这样两个控件才不会重叠
            label.setBounds(60,130,105,35);
            
            //创建一个 显示纯文本的多行区域 对象
            JTextArea textarea =new JTextArea("接收数据显示区域,2017年3月9日15:10:07");
            
            //添加这个 显示纯文本的多行区域 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个显示纯文本的多行区域
            this.getContentPane().add(textarea);
            
            //设置 "显示纯文本的多行区域"的精确位置(x,y,width,height)
            //注意 Y ==85 是大于 label 的 Y 值+height 值,这样两个控件才不会重叠
            textarea.setBounds(60,180,505,205);
            
    //        //创建一个面板对象,这个面板就是一个组件容器
    //        JPanel pan = new JPanel();
    //        
    //        //添加 容器
    //        this.add(pan);
    //        
    //        //创建一个标签对象
    //        JLabel label =new JLabel("测试标签",null,SwingConstants.RIGHT);
    //        
    //        //添加这个 标签 lable 对象 到面板上
    //        pan.add(label);
    //        
    //        //创建一个单行文本对象
    //        JTextField textfield =new JTextField("测试单行文本输入框");
    //        
    //        //添加这个 单行文本 对象 到面板上
    //        pan.add(textfield);
    //        
    //        //创建一个 单行文本密码输入框 对象
    //        JPasswordField passwordfield =new JPasswordField("123456");//默认密码 123456
    //        
    //        //添加这个 单行文本密码输入框 对象 到面板上
    //        pan.add(passwordfield);
    //        
    //        //创建一个 显示纯文本的多行区域 对象
    //        JTextArea textarea =new JTextArea("测试显示纯文本的多行区域");
    //        
    //        //添加这个 显示纯文本的多行区域 对象 到面板上
    //        pan.add(textarea);
    //        
    //        //创建一个按钮对象
    //        JButton button =new JButton("测试按钮");
    //        
    //        //添加这个 BUTTON 对象 到面板上
    //        pan.add(button);
    //        
    //        //创建一个单选按钮对象
    //        JRadioButton jradiobutton =new JRadioButton("测试单选按钮");
    //        
    //        //添加这个 jradiobutton 对象 到面板上
    //        pan.add(jradiobutton);
    //        
    //        //创建一个多选按钮对象
    //        JCheckBox jchackbox =new JCheckBox("测试多选按钮");
    //        
    //        //添加这个 jchackbox 对象 到面板上
    //        pan.add(jchackbox);
            
            //创建一个列表对象,list 需要 设置内容,暂时还不会,2017年3月9日10:15:44
            //JList jlist =new JList("测试列表");
            
            //添加这个 jlist 对象 到面板上
            //pan.add(jlist);
            
            //创建一个下拉列表对象,JComboBox 需要 设置内容,暂时还不会,2017年3月9日10:15:44
            //JComboBox jcombobox =new JComboBox("测试下拉列表");
            
            //添加这个 jcombobox 对象 到面板上
            //pan.add(jcombobox);
        }
    }

    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import javax.swing.JButton;
    import javax.swing.JCheckBox;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JList;
    import javax.swing.JPanel;
    import javax.swing.JPasswordField;
    import javax.swing.JRadioButton;
    import javax.swing.JTextArea;
    import javax.swing.JTextField;
    import javax.swing.SwingConstants;
    import javax.swing.WindowConstants;
    
    public class SuoZhangFrame extends JFrame
    {
        
        static int clickCounter=0;
        
        
        public SuoZhangFrame(String title)
        {
            this.setTitle(title);//设置窗口标题
            
            //这句代码是当用户关闭窗口的时候关掉应用程序
            this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            
            this.setSize(800, 600);//设置长和宽,最常见的屏幕分辨率 1366*768,2017年3月9日09:31:24
            
            this.setLocation(100,100);//设置起点位置,屏幕右上角 为(0,0)
            
            this.setVisible(true); //设置窗口的可见性
            
            
            //设置窗体为空布局,2017年3月9日14:04:26
            this.setLayout(null);
            
            //创建一个单行文本对象
            JTextField textfield =new JTextField("请输入要发送的消息");
            
            //添加这个 单行文本 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个单行文本控件
            this.getContentPane().add(textfield);
            
            //设置 "单行文本"的精确位置(x,y,width,height)
            textfield.setBounds(60,30,180,35);
            
            //创建一个按钮1对象
            JButton button1 =new JButton("发送");
            
            //添加这个 按钮1 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个按钮1
            this.getContentPane().add(button1);
            
            //设置 "按钮1"的精确位置(x,y,width,height)
            //注意 Y ==85 是大于 textfield的 Y 值+height 值,这样两个控件才不会重叠
            button1.setBounds(60,85,105,35);
            
            //创建一个标签对象
            JLabel label =new JLabel("接收消息显示区域");
            
            //添加这个 标签 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个标签 
            this.getContentPane().add(label);
            
            //设置 "标签对象"的精确位置(x,y,width,height)
            //注意 Y ==130 是大于 button1 的 Y 值+height 值,这样两个控件才不会重叠
            label.setBounds(60,130,105,35);
            
            //创建一个 显示纯文本的多行区域 对象
            JTextArea textarea =new JTextArea("接收数据显示区域,2017年3月9日15:10:07");
            
            //添加这个 显示纯文本的多行区域 对象 到面板上,2017年3月9日14:16:09
            //这里 实际是两步 ,先初始化一个容器,然后在这个容器上添加一个显示纯文本的多行区域
            this.getContentPane().add(textarea);
            
            //设置 "显示纯文本的多行区域"的精确位置(x,y,width,height)
            //注意 Y ==180 是大于 label 的 Y 值+height 值,这样两个控件才不会重叠
            textarea.setBounds(60,180,505,205);
            
    
            
            //使用匿名的内部类,第一种事件监听方法
            button1.addActionListener(new ActionListener()
                    {
                        @Override
                        public void actionPerformed(ActionEvent e)
                        {
                            clickCounter++;
                            
                            // TODO Auto-generated method stub
                            textarea.setText("我被点击了"+clickCounter);
                        }
                        
                    });
            
    //        //创建一个面板对象,这个面板就是一个组件容器
    //        JPanel pan = new JPanel();
    //        
    //        //添加 容器
    //        this.add(pan);
    //        
    //        //创建一个标签对象
    //        JLabel label =new JLabel("测试标签",null,SwingConstants.RIGHT);
    //        
    //        //添加这个 标签 lable 对象 到面板上
    //        pan.add(label);
    //        
    //        //创建一个单行文本对象
    //        JTextField textfield =new JTextField("测试单行文本输入框");
    //        
    //        //添加这个 单行文本 对象 到面板上
    //        pan.add(textfield);
    //        
    //        //创建一个 单行文本密码输入框 对象
    //        JPasswordField passwordfield =new JPasswordField("123456");//默认密码 123456
    //        
    //        //添加这个 单行文本密码输入框 对象 到面板上
    //        pan.add(passwordfield);
    //        
    //        //创建一个 显示纯文本的多行区域 对象
    //        JTextArea textarea =new JTextArea("测试显示纯文本的多行区域");
    //        
    //        //添加这个 显示纯文本的多行区域 对象 到面板上
    //        pan.add(textarea);
    //        
    //        //创建一个按钮对象
    //        JButton button =new JButton("测试按钮");
    //        
    //        //添加这个 BUTTON 对象 到面板上
    //        pan.add(button);
    //        
    //        //创建一个单选按钮对象
    //        JRadioButton jradiobutton =new JRadioButton("测试单选按钮");
    //        
    //        //添加这个 jradiobutton 对象 到面板上
    //        pan.add(jradiobutton);
    //        
    //        //创建一个多选按钮对象
    //        JCheckBox jchackbox =new JCheckBox("测试多选按钮");
    //        
    //        //添加这个 jchackbox 对象 到面板上
    //        pan.add(jchackbox);
            
            //创建一个列表对象,list 需要 设置内容,暂时还不会,2017年3月9日10:15:44
            //JList jlist =new JList("测试列表");
            
            //添加这个 jlist 对象 到面板上
            //pan.add(jlist);
            
            //创建一个下拉列表对象,JComboBox 需要 设置内容,暂时还不会,2017年3月9日10:15:44
            //JComboBox jcombobox =new JComboBox("测试下拉列表");
            
            //添加这个 jcombobox 对象 到面板上
            //pan.add(jcombobox);
        }
    }

  • 相关阅读:
    4.8日学习
    Apache安装
    HTML5 review
    个人阅读作业LAST
    个人阅读作业Week7
    结对编程:界面模块总结
    个人博客作业Week3
    结对编程博客
    个人博客week2
    软工第一次作业简单总结
  • 原文地址:https://www.cnblogs.com/suozhang/p/6525516.html
Copyright © 2011-2022 走看看