package com.swing;

import java.awt.Color;
import java.awt.Container;
import java.awt.event.WindowAdapter;

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

/**
 *1:Swing组件通常被称作"轻量级的组件";
 *
 *2:窗体作为Swing应用程序中组件的承载体,处于非常重要的位置,Swing中常用的窗体包括
 *JFrame,JDialog
 *
 *3:JFrame窗体是一个容器,它是Swing程序中各个组件的载体,可以将JFrame看作是承载这些
 *Swing组件的容器
 *
 *4:读者大致应该有这样一个概念
 *Swing组件的窗体通常和组件的容器相关,所以在JFrame对象创建完成后,
 *需要调用getContentPane()方法将窗体转换为容器,然后在容器中添加组件
 *或设置布局管理器,通常这个容器用来包含和显示组件,如果需要将组件添加到容器,
 *可以使用来自Container类的add()方法进行设置。
 *
 *
 *过程如下
 *第一创建一个JFrame窗体对象
 *第二通过getContentPane()方法将窗体转化为容器
 *第三在容器中添加组件或设置布局管理器
 *第四通常这个容器用来包含和显示组件
 * @author biexiansheng
 *
 */

/**

实例为简单学习JFrame

*/
public class JFrameTest extends JFrame{//定义一个类继承JFrame类

    public void CreateJFrame(String title){//定义一个CreateJFrame方法
        JFrame jf=new JFrame(title);//实例化一个JFrame对象
        Container container=jf.getContentPane();//获取一个容器
        container.setBackground(Color.blue);//设置容器的背景颜色
        jf.setVisible(true);//使窗体可视
        jf.setSize(200, 150);//设置窗体大小
        //jf.setBounds(200,200,450,450);//设置窗体的位置和大小
        //设置窗体的关闭方式
        jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        
    }
    public static void main(String[] args) {
        //在主方法中调用CreateJFrame()方法
        JFrameTest jf=new JFrameTest();
        jf.CreateJFrame("创建一个JFrame窗体");
    }
}

//实例演示JLabel标签的使用,实例化JLabel对象,然后将标签实例添加到容器中,然后可以设置容器的布局,

package com.swing;

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

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;

public class JLabelTest {

    public void CreateJLabel(){
        JFrame jf=new JFrame();//实例化JFrame对象
        Container container=jf.getContentPane();//将窗体转化为容器
        //接下来就可以在容器中添加组件或者设置布局管理器
        JLabel jl=new JLabel("这是一个JLabel标签窗体");//实例化JLabel对象
        //设置字体居中显示,下面两行代码功能一样
        jl.setHorizontalAlignment(JLabel.CENTER);
        //jl.setHorizontalAlignment(SwingConstants.CENTER);
        container.add(jl);//将标签添加到容器中
        container.setBackground(Color.RED);//设置容器的背景颜色
        
        //下面设置窗体的一些格式
        jf.setTitle("这是窗体左上角显示的");
        jf.setVisible(true);//设置窗体可视化
        jf.setSize(450, 400);//设置窗体的大小
        //设置窗体的关闭方式
        jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        //jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    public static void main(String[] args) {
        JLabelTest jl=new JLabelTest();
        jl.CreateJLabel();
    }
}

 

JAVA学习中Swing概述中的JFrame学习的更多相关文章

  1. 01 Java图形化界面设计——容器(JFrame)

    程序是为了方便用户使用的,因此实现图形化界面的程序编写是所有编程语言发展的必然趋势,在命令提示符下运行的程序可以让我们了解java程序的基本知识体系结构,现在就进入java图形化界面编程. 一.Jav ...

  2. JAVA学习中Swing部分JDialog对话框窗体的简单学习

    package com.swing; import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent ...

  3. Java学习-040-级联删除目录中的文件、目录

    之前在写应用模块,进行单元测试编码的时候,居然脑洞大开居然创建了一个 N 层的目录,到后来删除测试结果目录的时候,才发现删除不了了,提示目录过长无法删除.网上找了一些方法,也找了一些粉碎机,都没能达到 ...

  4. Java:类集框架中集合的学习

    Java:类集框架中集合的学习 集合 Java:Set的学习 Set是类集框架中的集合类.集合是不按特定的方式排序,并且没有重复对象的一种类. Q:Set如何操作?Set中的不按特定方式排序是怎么排序 ...

  5. Java学习之Swing Gui编程

    Java学习之Swing Gui编程 0x00 前言 前面的使用的Gui是基于Awt 去进行实现,但是在现实写Gui中 AWT实际运用会比较少. 0x01 Swing 概述 AWT 和Swing 区别 ...

  6. Java虚拟机JVM学习01 流程概述

    Java虚拟机JVM学习01 流程概述 Java虚拟机与程序的生命周期 一个运行时的Java虚拟机(JVM)负责运行一个Java程序. 当启动一个Java程序时,一个虚拟机实例诞生:当程序关闭退出,这 ...

  7. [Hadoop] Hadoop学习历程 [持续更新中…]

    1. Hadoop FS Shell Hadoop之所以可以实现分布式计算,主要的原因之一是因为其背后的分布式文件系统(HDFS).所以,对于Hadoop的文件操作需要有一套全新的shell指令来完成 ...

  8. Java多线程2:Thread中的实例方法

    Thread类中的方法调用方式: 学习Thread类中的方法是学习多线程的第一步.在学习多线程之前特别提出一点,调用Thread中的方法的时候,在线程类中,有两种方式,一定要理解这两种方式的区别: 1 ...

  9. Java 数据类型在实际开发中应用

    在前边的博文中,我已经介绍了Java核心的容器IO等,现在我来说一下java中的数据类型.在java中,一切东西皆为对象(这句话意思是java中绝大数情况都用对象),极少数不是对象的,也存在与之对应的 ...

随机推荐

  1. eclipse新建项目,报错“Error: workspace\appcompat_v7\res\values-v21\styles_base.xml No resource found that matches the given name”

    新建项目报错,不知道为什么,以前从未出现过的错误,把sdk更新之后,出现莫名错误,自己也是一知半解,在网上找了好久的错误,终于在一个english网站找到了解决方法,soga,从未觉得english如 ...

  2. pause 和 title

    -------siwuxie095 pause 暂停批处理程序,并显示:请按任意键继续- 暂停高级技巧: pause>nul 只暂停,不显示任何信息,且光标移到下一行 如果不想用默认提示语:请按 ...

  3. Java 技术体系图

    Java 程序员 高级特性 反射.泛型.注释符.自动装箱和拆箱.枚举类.可变 参数.可变返回类型.增强循环.静态导入 核心编程 IO.多线程.实体类. 集合类.正则表达式. XML 和属性文件 图形编 ...

  4. zabbix使用host metadata方式主动注册

    host metadata是zabbix2.2新增加的功能,该功能在zabbix-agent端可以自定义条件,在选择自动注册的时候,zabbix-server端可以根据host metadata来选择 ...

  5. 反射类属性生成DataTable

    public class People //类名 { private static string name; //字段 private string sex;//字段 public string Se ...

  6. python安装pycrypto报错error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

    系统3.19.0-15-generic #15-Ubuntu 安装pycrypto提示error: command 'x86_64-linux-gnu-gcc' failed with exit st ...

  7. [php-src]窥探Php内核中的变量

    内容均以php-5.6.14为例. 在看各种组合数据类型之前,有必要先熟悉下 Zend/zend_types.h 里面的自定义数据类型. #ifndef ZEND_TYPES_H // 防止多次 in ...

  8. VB6.0 调用存储过程

    最近有在做一个需求,需要在VB6.0中调用存储过程,整理了一下,供大家参考, 范例: Function callStoredProcedure(sEmployeeID As String, Optio ...

  9. iOS遍历程序内某个文件夹下所有文件的属性

    项目中有个文件管理系统,在做本地文件管理操作的时候,遇到了遍历本地文件的问题 遍历到的文件有些不需要显示,而且需要得到文件的相关属性,在此总结下. //查找需要遍历文件夹的目录 NSString *k ...

  10. css3动画属性(transitions:property duration timing transition-delay)

    transitions:property duration timing-function; transitionst他有三个参数:1) property:属性设置,例如background,colo ...