关于封装弹窗丶java教程网的信息

本文目录一览:

JAVA的弹窗怎么做?

JAVA弹窗,有下面常见的2种方法实现:

通过JDialog(模式窗口) 类来实现.里面的写法类似JFrame

重点方法提示: setModal(true);

//当设置为true表示,如果不关闭这个弹窗,那么主界面的其他组件都无法操作,该弹窗置于其他窗口的前面

//当设置为false表示,可以绕开本弹窗,对主界面的其他组件进行操作

优点: 功能强大,  扩展性强

缺点: 代码量大.

示例图

通过JOptionPane(提示框) 来实现

效果图如下

优点: 代码量少,简单,方便, 普通场景已经够用

缺点: 扩展性不够, 复杂逻辑难以实现.

下面写一个具体案例

场景:当用于对文本域的文字,进行操作后,那么退出时,提示用户, 是否要保存已经更改后的内容.  如果用户没有修改内容,那么不用提示

重点代码

addDocumentListener–用于实现对文本内容发生改变时进行响应

addWindowListener—用于实现对窗口进行操作时进行响应

完整代码如下

import java.awt.Font;

import java.awt.event.*;

import javax.swing.*;

import javax.swing.event.*;

public class JDDemo extends JFrame implements DocumentListener,WindowListener{

JTextArea jta;

boolean flag;

public JDDemo() {

jta = new JTextArea();//文本域

jta.setText(“床前明月光”);//文本域的文字–可以通过IO加载txt文档的文字

jta.setFont(new Font(“宋体”,Font.BOLD, 20));//文本域的字体

jta.setLineWrap(true);//设置自动换行

jta.getDocument().addDocumentListener(this);//添加文档变化事件的响应.比如修改,删除等

JScrollPane jsp = new JScrollPane(jta);//滚动面板(当文字太多时,显示滚动条)

add(jsp);

setTitle(“主窗口”);//标题

setSize(300, 260);//大小

setLocationRelativeTo(null);//居中

setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);//点击窗口的关闭按钮时,执行windowClosing的代码

addWindowListener(this);

setVisible(true);//窗口可见

}

public static void main(String[] args) {

new JDDemo();

}

//实现WindowListener接口,需要重写下面的6个方法, windowClosing专门处理关闭时的方法

public void windowOpened(WindowEvent e) {

}

public void windowClosing(WindowEvent e) {

if(flag){

int n = JOptionPane.showConfirmDialog(null, “已经更改了内容,需要保存后再退出吗?”, “提示”,JOptionPane.YES_NO_OPTION);

//n等于-1表示关闭了弹出的对话框等情况的默认值

//n等于0(JOptionPane.YES_OPTION)表示选择了Yes

//n等于1(JOptionPane.NO_OPTION)表示选择了No

if(n==JOptionPane.YES_OPTION){

//把文字保存到文件的代码省略…

System.out.println(“正在使用IO进行保存..ing”);

closeFrame();//关闭窗口并退出

}else if(n==JOptionPane.NO_OPTION){

System.out.println(“放弃保存修改.马上退出”);

closeFrame();

}

}else{

closeFrame();

}

}

public void windowClosed(WindowEvent e) {

}

public void windowIconified(WindowEvent e) {

}

public void windowDeiconified(WindowEvent e) {

}

public void windowActivated(WindowEvent e) {

}

public void windowDeactivated(WindowEvent e) {

}

//文档事件,有下面三个,如果触发其中一个,都可以认为修改了文档,所以需要在退出时进行提示,是否保存

public void insertUpdate(DocumentEvent e) {//插入

flag=true;

}

public void removeUpdate(DocumentEvent e) {//删除

flag=true;

}

public void changedUpdate(DocumentEvent e) {//改变

flag=true;

}

//关闭窗口的方法

public void closeFrame(){

this.setVisible(false);//窗口不可见

this.dispose();//窗口销毁

System.exit(0);//JVM虚拟机退出

}

}

运行效果图:

哪里有java视频教程?求推荐。

java视频教程网站:Codecademy、慕课网和实验楼。

1、Codecademy:

Codecademy是一家国外知名的在线学习编程的网站,世界各地的人都在上面学习编程,虽然是全英文的,但是大多数单词都比较通熟易懂,在学习编程的同时,也可以提高我们的英语阅读能力,遇到实在不认识的单词,可以用谷歌翻译一下。Codecademy会根据你的爱好和目前水平,给你推荐合适的课程,我感觉还挺不错的。

2、慕课网:

慕课网是垂直的互联网IT技能免费学习网站。我认为是目前国内最好的编程类学习网站,资源十分丰富,以独家视频教程为特色,学习成本较低。慕课网上几乎涵盖了目前所有主流技术的教程。

3、实验楼:

实验楼是以实验为核心的IT在线教育网站,网站为IT学习者提供实践操作实验环境和全面的IT课程。这是一家格外注重实践操作的网站,这也是它的特色所在,里面设置了各种楼赛,进行挑战升级,学习成本较低,学习效率较高。

哪有免费的JAVA教程?

java最新基础入门教程百度网盘免费资源在线学习

 链接:

提取码: qrd2

java最新基础入门教程 千锋java基础教程:第19章 项目实战 千锋java基础教程:第18章 GUI事件处理 千锋java基础教程:第17章 XML与JSON 千锋java基础教程:第16章 注解 千锋java基础教程:第15章 枚举 千锋java基础教程:第14章 正则表达式 千锋java基础教程:第13章 泛型 千锋java基础教程:第12章 反射与内省 千锋java基础教程:第11章 网络编程 千锋java基础教程:第10章 多线程与并发 千锋java基础教程:第09章 集合 千锋java基础教程:第08章 文件与IO 千锋java基础教程:第07章 常用类库 千锋java基础教程:第06章 Eclipse与异常处理  

原创文章,作者:BLCX,如若转载,请注明出处:https://www.506064.com/n/137867.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
BLCXBLCX
上一篇 2024-10-04 00:18
下一篇 2024-10-04 00:18

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • MQTT使用教程

    MQTT是一种轻量级的消息传输协议,适用于物联网领域中的设备与云端、设备与设备之间的数据传输。本文将介绍使用MQTT实现设备与云端数据传输的方法和注意事项。 一、准备工作 在使用M…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Python3.6.5下载安装教程

    Python是一种面向对象、解释型计算机程序语言。它是一门动态语言,因为它不会对程序员提前声明变量类型,而是在变量第一次赋值时自动识别该变量的类型。 Python3.6.5是Pyt…

    编程 2025-04-29
  • Deepin系统分区设置教程

    本教程将会详细介绍Deepin系统如何进行分区设置,分享多种方式让您了解如何规划您的硬盘。 一、分区的基本知识 在进行Deepin系统分区设置之前,我们需要了解一些基本分区概念。 …

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29

发表回复

登录后才能评论