JAVA笔记__窗体类/Panel类/Toolkit类
/**
* 窗体类
*/
public class Main {
public static void main(String[] args) {
MyFrame m1 = new MyFrame(); }
} class MyFrame extends Frame{
public MyFrame(){
this.setTitle("My first software");
this.setSize(300,200);
this.setBackground(Color.yellow);
this.setResizable(false); //不允许调整窗体大小
this.setLocation(300,300);
this.setLayout(new FlowLayout()); //把窗体的默认布局设成"流水布局" //在窗体上添加按钮
Button b1 = new Button("click me.1");
this.add(b1);
this.add(new Button("click me.2")); this.setVisible(true);
}
}
/**
* Panel类(面板类),组件容器
*/
public class Main {
public static void main(String[] args) {
MyPanel m1 = new MyPanel();
}
} class MyPanel extends Frame{
public MyPanel(){
this.setTitle("My first software");
this.setSize(600,400);
this.setBackground(Color.yellow);
this.setResizable(false); //不允许调整窗体大小
this.setLocation(300,300);
this.setLayout(new FlowLayout()); //把窗体的默认布局设成"流水布局"
addPanel();
this.setVisible(true);
}
public void addPanel(){ //Panel的布局默认是"流水布局"
Panel p1 = new Panel(); //创建面板对象
p1.setBackground(Color.GREEN);
p1.add(new Button("click me.1"));
p1.add(new Button("click me.2"));
p1.add(new Button("click me.3"));
this.add(p1); //把面板添加到窗体上
}
}
/**
* Toolkit类:用于将各种组件绑定到本地系统的工具包。
*/
public class Main {
public static void main(String[] args) {
MyToolkit m1 = new MyToolkit();
}
} class MyToolkit extends Frame{
public MyToolkit(){
this.setTitle("My first software");
this.setSize(600,400);
this.setBackground(Color.yellow); Toolkit t1 = Toolkit.getDefaultToolkit(); //获取工具对象
Dimension d1 = t1.getScreenSize(); //获取当前屏幕的尺寸
double w = d1.getWidth();
double h = d1.getHeight();
int x = (int)(w/2);
int y = (int)(h/2);
this.setLocation(x-300,y-200); //设置窗体图标 (新建一个包,把图片放进去)
URL url = this.getClass().getClassLoader().getResource("pkg1/image/fish.jpg"); //写成pkg1.image.fish.jpg不可以
Image ima1 = t1.getImage(url);
this.setIconImage(ima1); this.setResizable(false); //不允许调整窗体大小
this.setLayout(new FlowLayout()); //把窗体的默认布局设成"流水布局" this.setVisible(true);
}
}
JAVA笔记__窗体类/Panel类/Toolkit类的更多相关文章
- JAVA笔记10-抽象类
(1)abstrac关键字类修饰的类是抽象类,用abstract修饰的方法是抽象方法: (2)含有抽象方法的类必须被定义为抽象类: (3)抽象类必须被继承,抽象方法必须被重写(或者将子类也声明为抽象类 ...
- Java笔记---枚举类和注解
Java笔记---枚举类和注解 一.枚举类 自定义枚举类 方式一:JDK5.0之前自定义枚举类 class Seasons { //1. 声明Seasons对象的属性 private final St ...
- Java基础进阶:多态与接口重点摘要,类和接口,接口特点,接口详解,多态详解,多态中的成员访问特点,多态的好处和弊端,多态的转型,多态存在的问题,附重难点,代码实现源码,课堂笔记,课后扩展及答案
多态与接口重点摘要 接口特点: 接口用interface修饰 interface 接口名{} 类实现接口用implements表示 class 类名 implements接口名{} 接口不能实例化,可 ...
- Effective java笔记(三),类与接口
类与接口是Java语言的核心,设计出更加有用.健壮和灵活的类与接口很重要. 13.使类和成员的可访问性最小化 设计良好的模块会隐藏起所有的实现细节,仅使用API与其他模块进行通信.这个概念称为信息隐藏 ...
- java笔记--超级类Object多线程的应用+哲学家进餐算法内部类与多线程结合
关于Object类中的线程方法: Object类是所有Java类的 父类,在该类中定义了三个与线程操作有关的方法,使得所有的Java类在创建之后就支持多线程 这三个方法是:notify(),notif ...
- Java笔记(二十四)……集合工具类Collections&Arrays
Collections 集合框架的工具类,方法全部为静态 Collections与Collection的区别 Collection是集合框架的一个顶层接口,里面定义了单列集合的共性方法 Collect ...
- Java笔记:String类
1.String类是不可变类,一旦一个String对象被创建以后,包含在这个对象中的字符序列式不可改变的,直至这个对象被销毁. String s1 = "java"; s1 = s ...
- Java笔记:枚举类
1.一个类的实例是有限且固定的,这个类称为枚举类.比如季节类,只有四个对象(春.夏.秋.冬) 2.手动实现一个枚举类(1)通过private将构造器隐藏起来(2)把这个类的所有可能实例都使用priva ...
- Java笔记(二)类
类 一.类的基础 1.类---一种自定义数据类型. 2.与方法内创建局部变量不同,在创建对象的时候,所有的实例变量都会分配 一个默认值,这与创建数组的时候是类似的. 3.在{}对实例变量内赋值: in ...
随机推荐
- CodeForce-792C Divide by Three(数学)
Divide by Three CodeForces - 792C 有一个正整数 n 写在黑板上.它有不超过 105 位. 你需要通过删除一些位使得他变成一个美丽的数,并且需要删除尽量少的位数.删除的 ...
- HTML音乐悬浮播放器
话不多说先上代码 <link rel="stylesheet" href="http://47.102.203.92/css/APlayer.min.css&quo ...
- linux新安装了php,但是使用mysqli连接数据库一直超时
centos7+mysql5.5+php5.6+nginx mysql php nginx都安装完成,然后启动了,网站也运行, 但是php文件中使用mysqli_connect时一直超时,有时也报错, ...
- 用Python做了个奇奇怪怪的打篮球游戏
一.前言 准备编写一个篮球游戏,运动员带球跑,跳起投篮.在每帧图片中包括运动员和篮球,使用多帧图片,实现运动员运球跑动的效果. 运动员运球跑动作每帧图形的宽和高可能不同,例如,跨一大步,和两腿并拢,其 ...
- 使用jemeter构造各种变量数据
使用手动创建测试数据太麻烦,因此考虑用jmeter写了一些创建测试数据的脚本,针对那些变量非固定的数据可以利用函数来实现 通过函数助手添加各种变量数据 Tools--->函数助手 1:生成当前时 ...
- django ORM教程(转载)
Django中ORM介绍和字段及字段参数 Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简 ...
- PyCharm取消波浪线
步骤:settings->Editor->Color Scheme->General->(右侧)Errors and Warnings->Weak Warning-> ...
- yum 安装 php 环境
如此简单 第一步: sudo rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7. ...
- Dapr + .NET Core实战(九)本地调试
前几节开发Dapr应用程序时,我们使用 dapr cli 来启动dapr服务,就像这样: dapr run --dapr-http-port 3501 --app-port 5001 --app-id ...
- Hive语法及其进阶(二)
1.使用JDBC连接Hive 1 import java.sql.Connection; 2 import java.sql.DriverManager; 3 import java.sql.Prep ...