杭州华育LOGO

学员作品 学员心得技术园地 潮人地 Android(安卓)培训 杭州电脑(计算机)培训 杭州网络营销培训 杭州JAVA培训
返回首页
当前位置: 主页 > 学员天地 > 技术园地 >

Java学习之 Swing 编程

时间:2014-05-08 16:22来源:杭州华育软件实训基地 作者:杭州华育 点击:
主要记录Java Swing编程,JFrame控制的使用以及内容面板(JPanel)的常用布局的使用。

Java Swing中的透明窗体(Windows中消息提示框的制作),用Java Swing编写简单的测试小工具界面(源码)
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.EventQueue;
import java.awt.FlowLayout;
import java.awt.GridLayout;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.UIManager;
import javax.swing.border.EmptyBorder;


public class MyJFrame extends JFrame {

 /**
  *
  */
 private JPanel contentPane;
 private static final long serialVersionUID = -4948295198859299320L;
 
 public static void main(String []args){
  try {
   UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");// 修改窗体的外观为Nimbus
  } catch (Throwable e) {
   // TODO: handle exception
   e.printStackTrace();
  }
 
  EventQueue.invokeLater(new Runnable() {
   @Override
   public void run() {
    // TODO Auto-generated method stub
    try {
     MyJFrame frame = new MyJFrame();
     frame.setVisible(true);
    
//     frame.AbsoluteLayoutDemo();
//     frame.FlowLayoutDemo();
//     frame.BorderLayoutDemo();
     frame.GirdLayoutDemo();
    
    } catch (Exception e) {
     // TODO: handle exception
     e.printStackTrace();
    }
   }
  });
 }
 
 public MyJFrame(){
  setTitle("较简单的窗体");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setBounds(100,100,250,100);
 }
 
 // 绝对布局管理
 public void AbsoluteLayoutDemo(){
  setTitle("绝对布局");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置应用退出模式,退出时关闭
 
  setBounds(100, 100, 250, 100); //  设置窗体的大小和位置
  contentPane = new JPanel();  // 创建内容面板
  contentPane.setBorder(new EmptyBorder(5,5,5,5)); // 设置内容面板边框
  setContentPane(contentPane); // 使用内容面板
  contentPane.setLayout(null);// 设置布局管理器为null
 
  JButton btn1 = new JButton("按钮-1");
  btn1.setBounds(6, 9, 90, 30);
  contentPane.add(btn1);
  btn1.setBackground(Color.GREEN);
 
 
  JButton btn2 = new JButton("按钮-2");
  btn2.setBounds(96, 39, 90, 30);
  btn2.setBackground(Color.RED);
  contentPane.add(btn2);
 }
 // 流式布局管理,根据内容面板的变化,排列也发生变化
 public void FlowLayoutDemo(){
  setTitle("流式布局");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setBounds(100, 100, 300, 150);
 
  contentPane = new JPanel();
  contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
  setContentPane(contentPane);
  contentPane.setLayout(new FlowLayout()); //设置为流式布局
 
  for (int i = 1; i < 11; i++) {
   JButton btn = new JButton("按钮"+i);
   contentPane.add(btn);  
  } 
 }
 
 // 边界布局管理,指定各自的方位
 public void BorderLayoutDemo(){
  setTitle("边界布局");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setBounds(100,100,450,300);
  contentPane = new JPanel();
  contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
  contentPane.setLayout(new BorderLayout());// 设置内容面板的布局管理器为边界布局
  setContentPane(contentPane);// 应用内容面板
 
  JButton westBtn = new JButton("西部");
  contentPane.add(westBtn, BorderLayout.WEST);
 
  JButton eastBtn = new JButton("东部");
  contentPane.add(eastBtn, BorderLayout.EAST);
 
  JButton northBtn = new JButton("北部");
  contentPane.add(northBtn, BorderLayout.NORTH);
 
  JButton southBtn = new JButton("南部");
  contentPane.add(southBtn, BorderLayout.SOUTH);
 
  JButton centerBtn = new JButton("中部");
  contentPane.add(centerBtn, BorderLayout.CENTER);
 }
 
 // 网格布局管理器,按照从左到右,从上到下 的 “行*列”布局一次排列
 public void GirdLayoutDemo(){
  setTitle("网格布局");
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  setBounds(100,100,450,300);
  contentPane = new JPanel();
  contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
  setContentPane(contentPane);
//  contentPane.setLayout(new GridLayout());// 设置网格布局,默认是单行多列
  contentPane.setLayout(new GridLayout(3, 3, 10, 10));// 设置网格布局 3行3列
 
  for (int i = 0; i < 8; i++) {
   JButton btn = new JButton("btn"+(i+1));
   contentPane.add(btn);  
  }
 }
}


 

(责任编辑:杭州华育 ;杭州java培训,网络营销培训,杭州计算机培训,it培训,详询客服报名咨询
分享到:
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
提交报名信息

2018年杭州将加大力度经济转型,吸纳更多的技术人才落户杭州,软件人才需求量更是大幅提升,针对目前杭州IT行业人才需求“井喷”现象,华育软件杭州实训基地与杭州155家IT名企合作,建立人才培养与输送关系,启动“Eduask国家高端IT紧缺人才培养工程”。5月针对杭州地区18-28岁大中专生待业青年发放68个技能实训名额(应届大中专毕业生优先),经短期专业岗前实训后推荐进入企业,起薪4500-8000元,五险一金。

姓名: * 性别:
学历: 电话: *
所在地: *
您目前状况:
留言:
*