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 ...
随机推荐
- 一文彻底搞懂Hive的数据存储与压缩
目录 行存储与列存储 行存储的特点 列存储的特点 常见的数据格式 TextFile SequenceFile RCfile ORCfile 格式 数据访问 Parquet 测试 准备测试数据 存储空间 ...
- Linux系列(20) - shutdown
作用 用于关机或重启 例子 [shutdown -h 05:30]:设定凌晨05:30关机 [shutdown -h +30]:30分钟后关机 [shutdown -h now] 立即关机 [shut ...
- AT2164-[AGC006C]Rabbit Exercise【差分,倍增,数学期望】
正题 题目链接:https://www.luogu.com.cn/problem/AT2164 题目大意 \(n\)只兔子编号为\(1\sim n\),第\(i\)只在坐标轴\(x_i\)处.然后\( ...
- Windows下CMake编译安装OpenCV
Windows下CMake编译安装OpenCV 这是一个面向新手的在windows上运进opencv, helloword的教程. 在这里我们使用vs2019来编译opencv, 并运行一个hello ...
- python-matplotlib学习(1)
1 import matplotlib.pyplot as plt 2 import numpy as np 3 4 x=np.linspace(-1,1,50) 5 y=2*x+1 6 plt.pl ...
- 好久没发文了,一篇Vue3的Composition API使用奉上
Composition API Composition API是Vue3中推荐的组件代码书写方式,相较于传统的Options API来说,它能让业务逻辑处理和后期代码维护变的更加简单. 首先我们来看O ...
- CAS邮箱的Express配置
Configuration for all clients: http://help.cstnet.cn/changjianwenti/youjianshoufa/kehuduan.htm Confi ...
- Angular 的性能优化
目录 序言 变更检查机制 性能优化原理 性能优化方案 小结 参考 序言 本文将谈一谈 Angular 的性能优化,并且主要介绍与运行时相关的优化.在谈如何优化之前,首先我们需要明确什么样的页面是存在性 ...
- 痞子衡嵌入式:我的三个小项目陆续上线恩智浦官方Github
恍如眨眼间,痞子衡在飞思卡尔/恩智浦已经工作 8 年多了,前 5 年主要是在软件团队,最近 3 年在系统团队.所处团队不同,工作思维也不同,自从转到系统团队,开始跟客户打起交道,对待问题和解决问题的立 ...
- instanceof和类型转换
什么是instanceof 判断一个对象是什么类型 注意点 X 和 Y 必须要有父子关系 否则编译都会失败 X对象只要是Y的子类(无论 是 儿子 还是 孙子 还是 曾孙....)X instanceo ...