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一些基础小知识的更多相关文章

  1. Java基础小知识(一)

     序言:“不积跬步,无以至千里.不积小流,无以成江海.”每一个庞大的知识架构都是由无数个小知识点慢慢积累起来的,没有量变的积累,就没有质变上的飞跃,成功往往离不开积累. 今天就和大家分享一些我在学习J ...

  2. 刚开始学习Javascript的一些基础小知识,从入门到崩溃,希望对大家有帮助(只适合初学者)

    一.简介 1.JavaScript一种直译式脚本语言,是一种动态类型.弱类型.基于原型的语言,内置支持类型,js不能操作文件. 重要的开始啦!!!!! 引入javascript: 行间js <d ...

  3. 学习笔记:Java的一些基础小知识之JVM与GC

      一.JVM是什么 Java虚拟机(英语:Java Virtual Machine,缩写为JVM),又名爪哇虚拟器,一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做.最早由太 ...

  4. java基础小知识

    1.1常量: 基本数据类型常量 字符常量 整数常量的表现形式:一进制的形式来表示(二进制,八进制,十进制,十六进制) 生活中:十进制(0-9)  ,星期(七进制(0-6)) ,时间(十二进制(0-11 ...

  5. Java的一些基础小知识之JVM与GC (转)

    一.JVM是什么 Java虚拟机(英语:Java Virtual Machine,缩写为JVM),又名爪哇虚拟器,一种能够运行Java bytecode的虚拟机,以堆栈结构机器来进行实做.最早由太阳微 ...

  6. Java基础小知识笔记

    1. Integer转进制的一个类2. toBinaryString,toOctalString,toHexString.(转为二进制,八进制,十六进制的方法)3. 如果·数据的大小没有超过byte/ ...

  7. python基础小知识,is和==的区别,编码和解码

    1.is和==的区别 1)id() 通过id()我们可以查看到一个变量表示的值在内存中的地址 >>> s1 = "Tanxu" >>> s2 = ...

  8. AngularJs——基础小知识(二)

    AngularJs的过滤器 1.Currency :过滤器(金额货币格式化)       

  9. php基础小知识

    1.php中的双引号可以正确的解析变量与转义序列,而单引号只会按照声明原样显示:双里面的字段会经过编译器解释,然后再当作HTML代码输出:单引号里面的不进行解释,直接输出. 2.转义序列是针对源代码的 ...

  10. C# 基础小知识之yield 关键字 语法糖

    原文地址:http://www.cnblogs.com/santian/p/4389675.html 对于yield关键字我们首先看一下msdn的解释: 如果你在语句中使用 yield 关键字,则意味 ...

随机推荐

  1. NEQR: novel enhanced quantum representation

    一.概述   NEQR利用量子叠加和量子纠缠的特性,将数字图像转换为量子态表示,并通过量子门操作进行处理和操作.相较于传统的经典图像表示方法,NEQR具有更高的图像压缩率和更强的安全性,能够在保持图像 ...

  2. Spring源码:Bean的生命周期(二)

    前言 让我们继续讲解Spring的Bean实例化过程.在上一节中,我们已经讲解了Spring是如何将Bean定义加入到IoC容器中,并使用合并的Bean定义来包装原始的Bean定义.接下来,我们将继续 ...

  3. Vue拖拽排序

    转载至https://www.crazyming.com/note/757/ 使用拖拽功能来实现排序. 需要先学习w3cschool 关于拖拽的教程:http://www.w3school.com.c ...

  4. 文心一言 VS chatgpt (10)-- 算法导论 3.1 2~3题

    二.证明:对任意实常量a和b,其中b>0,有(n+a) ^ b=O(n ^ b). 文心一言: 设a=b,则有(n+a) ^ b=(n+b)(n+a)=n ^ b+n ^ b =O(n ^ b) ...

  5. 2022-06-29:x = { a, b, c, d }, y = { e, f, g, h }, x、y两个小数组长度都是4。 如果有: a + e = b + f = c + g = d + h

    2022-06-29:x = { a, b, c, d }, y = { e, f, g, h }, x.y两个小数组长度都是4. 如果有: a + e = b + f = c + g = d + h ...

  6. 在 ASP.NET Core Web API 中处理 Patch 请求

    一.概述 PUT 和 PATCH 方法用于更新现有资源. 它们之间的区别是,PUT 会替换整个资源,而 PATCH 仅指定更改. 在 ASP.NET Core Web API 中,由于 C# 是一种静 ...

  7. status能否设置为布尔值类型,前端采用复选框形式

    是的,可以将status设置为布尔类型,这样可以在前端使用复选框形式展示.在模型中的定义可以如下: class Acceptance(models.Model): # ... status = mod ...

  8. Cesium开发案例整理

    weigis近几年越来越被人们所关注,但是二三维开发难度也比普通web要高出许多,不管我们是在在开发或者是学习过程中,往往需要耗费大量的时间去查阅资料,和研究官方案例, 而大多二三维的包(openla ...

  9. 自学FHQ-treap的草稿

    更新:能过模板题(和加强版)的代码: 普通平衡树: (请自行实现读入和输出函数) 点击查看代码 #include <iostream> #include <random> #i ...

  10. hw面试常见中间件漏洞

    apache漏洞 未知扩展名解析漏洞 漏洞原理:Apache对文件名后缀的识别是从后往前进行的,当遇到不认识的后缀时,继续往前,直到识别 影响版本:使用module模式与php结合的所有版本,apac ...