JFrame一些基础小知识
JFrame.setLocationRelativeTo方法
JFrame.setLocationRelativeTo()是一个Java Swing中的方法,它用于将窗口居中显示在屏幕上。
当你调用该方法时,它会将窗口的位置相对于传入的组件进行定位。如果你传入的是null,则窗口将基于屏幕的中心点进行定位。
以下是一些常见的使用方法:
// 将窗口相对于父组件定位
JFrame frame = new JFrame();
frame.setLocationRelativeTo(parentComponent);
// 将窗口居中显示在屏幕上
JFrame frame = new JFrame();
frame.setLocationRelativeTo(null);
注意,在调用JFrame.setLocationRelativeTo()方法之前,你需要先设置JFrame的大小和位置,否则窗口会默认使用它的首选大小和位置。
JFrame.setResizable(false)方法
f.setResizable(false)是Java Swing中的方法,用于设置JFrame窗口的可重置性(Resizable)。设置为false时,用户无法通过拖拽窗口的边框来改变窗口的大小。
该方法的使用示例:
JFrame f = new JFrame("My Frame");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(400, 300);
f.setResizable(false); // 禁止用户调整窗口大小
f.setVisible(true);
这将创建一个大小为400x300像素,不可调整大小的JFrame窗口。
在有些情况下,你可能希望窗口可以进行调整大小。如果你不调用设置可重置性的方法,窗口默认是可重置的。而调用f.setResizable(true)可以将窗口的可重置性设置为可调整大小。
JFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)方法
JFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)是Java Swing中的方法,用于设置JFrame窗口的关闭操作。在窗口关闭时,可以设置程序如何终止运行。
在这个方法中,EXIT_ON_CLOSE是一个静态常量,表示在关闭窗口时,终止程序的运行。
使用示例:
JFrame f = new JFrame("My Frame");
f.setSize(400, 300);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置关闭操作
f.setVisible(true);
在这个例子中,当用户点击窗口的关闭按钮时,程序将自动终止运行。如果你希望在窗口关闭时执行其他操作,可以将JFrame.EXIT_ON_CLOSE替换为JFrame.DISPOSE_ON_CLOSE、JFrame.HIDE_ON_CLOSE等其他常量,或者自定义关闭事件的监听器来实现。
f.setLayout(new BorderLayout()); f.add(tb, BorderLayout.NORTH); f.add(new JPanel(), BorderLayout.CENTER)三个方法
这段代码是在Java Swing中将组件添加到JFrame中的示例代码。首先,f.setLayout(new BorderLayout())设置了JFrame窗口的布局管理器为BorderLayout,这是一个常用的布局管理器,它将组件分别放置到容器的东、南、西、北、中五个方向。
接下来,f.add(tb, BorderLayout.NORTH)将一个命名为tb的组件添加到f窗口的北部,即顶部。然后,f.add(new JPanel(), BorderLayout.CENTER)将一个新的JPanel组件添加到f窗口的中央部分。其中,new JPanel()表示创建一个新的空白JPanel组件,作为容器用于放置其他组件。
整个代码示例如下:
JFrame f = new JFrame("My Frame");
f.setLayout(new BorderLayout());
// 在窗口的顶部放置一个命名为tb的组件
JComponent tb = new JComponent() {};
f.add(tb, BorderLayout.NORTH);
// 在窗口的中央部分添加一个空白的JPanel组件
f.add(new JPanel(), BorderLayout.CENTER);
f.setSize(400, 300);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
这段示例代码中,JFrame的大小设置为400x300像素,关闭操作设置为EXIT_ON_CLOSE,设置可见为true,这样就能看到添加到JFrame中的组件了。
JFrame.setVisible(true)方法
f.setVisible(true)是Java Swing中的方法,用于设置窗口的可见性。
在Java Swing中,当一个窗口被创建后,默认情况下是不可见的。使用f.setVisible(true)可以将窗口设置为可见状态,这样用户就可以看到并与之交互。当窗口被设置为可见后,用户可以进行拖拽、关闭等操作。
使用示例:
JFrame f = new JFrame("My Frame");
f.setSize(400, 300);
// 在这里添加其他组件...
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true); // 将窗口设置为可见状态
在这个例子中,JFrame窗口被创建后,先设置了窗口的大小,然后添加了其他组件,接着设置了关闭操作,并最终使用setVisible(true)将窗口设置为可见的状态。
如果你希望将窗口设置为不可见,可以使用f.setVisible(false)。
JFrame一些基础小知识的更多相关文章
- Java基础小知识(一)
序言:“不积跬步,无以至千里.不积小流,无以成江海.”每一个庞大的知识架构都是由无数个小知识点慢慢积累起来的,没有量变的积累,就没有质变上的飞跃,成功往往离不开积累. 今天就和大家分享一些我在学习J ...
- 刚开始学习Javascript的一些基础小知识,从入门到崩溃,希望对大家有帮助(只适合初学者)
一.简介 1.JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型,js不能操作文件. 重要的开始啦!!!!! 引入javascript: 行间js <d ...
- 学习笔记:Java的一些基础小知识之JVM与GC
一.JVM是什么 Java虚拟机(英语:Java Virtual Machine,缩写为JVM),又名爪哇虚拟器,一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做.最早由太 ...
- java基础小知识
1.1常量: 基本数据类型常量 字符常量 整数常量的表现形式:一进制的形式来表示(二进制,八进制,十进制,十六进制) 生活中:十进制(0-9) ,星期(七进制(0-6)) ,时间(十二进制(0-11 ...
- Java的一些基础小知识之JVM与GC (转)
一.JVM是什么 Java虚拟机(英语:Java Virtual Machine,缩写为JVM),又名爪哇虚拟器,一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做.最早由太阳微 ...
- Java基础小知识笔记
1. Integer转进制的一个类2. toBinaryString,toOctalString,toHexString.(转为二进制,八进制,十六进制的方法)3. 如果·数据的大小没有超过byte/ ...
- python基础小知识,is和==的区别,编码和解码
1.is和==的区别 1)id() 通过id()我们可以查看到一个变量表示的值在内存中的地址 >>> s1 = "Tanxu" >>> s2 = ...
- AngularJs——基础小知识(二)
AngularJs的过滤器 1.Currency :过滤器(金额货币格式化)
- php基础小知识
1.php中的双引号可以正确的解析变量与转义序列,而单引号只会按照声明原样显示:双里面的字段会经过编译器解释,然后再当作HTML代码输出:单引号里面的不进行解释,直接输出. 2.转义序列是针对源代码的 ...
- C# 基础小知识之yield 关键字 语法糖
原文地址:http://www.cnblogs.com/santian/p/4389675.html 对于yield关键字我们首先看一下msdn的解释: 如果你在语句中使用 yield 关键字,则意味 ...
随机推荐
- js中宏任务和微任务
宏任务包括:<script>整体代码.setTimeout.setInterval.setImmediate.Ajax.DOM事件微任务:process.nextTick.Mutation ...
- MySQL之主从复制搭建
文章目录 主从复制 主从搭建 配置主从复制的命令 测试 总结 主从复制 主从也叫做(AB复制),允许一个服务器从一个服务器数据库(主服务器)的数据复制到一个或者多个MySQL数据库服务器. 主从复制的 ...
- Prism Sample 7 Module xaml
这一节使用xaml标记甚为不解. 本节注册module 的方式同directory一节很类似.在那一节中,用工厂方法创建一模块目录: protected override IModuleCatalog ...
- 最短路(Floyed、Dijkstra、Bellman-Ford、SPFA)
一.Floyed-Warshall算法 枚举中间点起点终点,对整个图进行松弛操作,就能得到整个图的多源最短路径: 例:POJ2240 Arbitrage Arbitrage is the use of ...
- 2022-09-05:作为国王的统治者,你有一支巫师军队听你指挥。 :给你一个下标从 0 开始的整数数组 strength , 其中 strength[i] 表示第 i 位巫师的力量值。 对于连续的一
2022-09-05:作为国王的统治者,你有一支巫师军队听你指挥. :给你一个下标从 0 开始的整数数组 strength , 其中 strength[i] 表示第 i 位巫师的力量值. 对于连续的一 ...
- 2022-05-21:给定一个数组arr,长度为n, 表示n个服务员,每个人服务一个人的时间。 给定一个正数m,表示有m个人等位。 如果你是刚来的人,请问你需要等多久? 假设:m远远大于n,比如n<=
2022-05-21:给定一个数组arr,长度为n, 表示n个服务员,每个人服务一个人的时间. 给定一个正数m,表示有m个人等位. 如果你是刚来的人,请问你需要等多久? 假设:m远远大于n,比如n&l ...
- MultiBoot SPI
对于7系列FPGA来说,计算器件启动时间按照以下公式: Config time = Bitstream size / (Config clk freq * Config interface width ...
- js 关于 replace 取值、替换第几个匹配项
〇.前言 在日常开发中,经常遇到针对字符串的替换.截取,知识点比较碎容易混淆,特此总结一下,仅供参考. 一.替换第一个匹配项 字符串替换 let strtest = "0123测试repla ...
- python -----类反射
#反射#描述:反射就是指在程序运行时,动态的去确定对象的类型,并且可以通过字符串的形式去调用对应的属性# ,方法,导入模块,是一种基于字符串的事情驱动# class User:# def __init ...
- 哈希工具john
john:一种极其强大且适应性强的哈希破解工具 爆破字典使用臭名昭著的 rockyou.txt 词表--这是一个非常大的常用密码词表 使用的工具 字典:rockyou.txt 哈希识别工具:hash- ...