精华内容
下载资源
问答
  • JavaSwing窗口上实现文字超链接,也就是一个普通的超文本链接功能,主要是使用java.lang 包中的Runtime 类可以实现标签的Web 链接功能。
  • JavaSwing弹窗是由UIManager类来进行管理。 此处是非常简单直接的几行代码,用于将开发的弹窗样式设置为Windows系统自带风格。 注意: 1.最好放在设置的JFrame弹窗代码前面,也就是最开头的位置,以防止初始化窗口...

    Java的Swing弹窗是由UIManager类来进行管理。
    此处是非常简单直接的几行代码,用于将开发的弹窗样式设置为Windows系统自带风格。
    注意:
    1.最好放在设置的JFrame弹窗代码前面,也就是最开头的位置,以防止初始化窗口的时候风格设置不成功。

            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
            } catch (ClassNotFoundException | InstantiationException | IllegalAccessException
                    | UnsupportedLookAndFeelException e) {
                e.printStackTrace();
            }
    

    此处推荐其它写的很全面的博客:
    【Java基础笔记】Swing 界面风格开发

    展开全文
  • 主要介绍了Java Swing JFrame窗口的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • javaswing窗口退出确认

    千次阅读 2019-09-23 10:58:08
    因此,为了用户体验,还是...需要注意的是,在添加事件之前,需要设置窗口默认关闭动作为执行window事件中定义的操作: setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); 完整的设置如下: setDefau...

    当你不小心点击了一下窗体,窗体直接关闭了,整个程序退出了,运行的东西还要再来一遍,是不是很崩溃。

    因此,为了用户体验,还是决定加上一个退出确认。

    需要注意的是,在添加事件之前,需要设置窗口默认关闭动作为执行window事件中定义的操作:

    setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);

    完整的设置如下: 

    setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
    addWindowListener(new WindowAdapter() {
        @Override
        public void windowClosing(WindowEvent e) {
            int result = JOptionPane.showConfirmDialog(null, "确认退出?", "确认",JOptionPane.OK_CANCEL_OPTION,JOptionPane.INFORMATION_MESSAGE);
            if (result == JOptionPane.OK_OPTION) {
    	        // 退出
                System.exit(0);
            }
        }
    });

    另外,介绍一下swing中窗口关闭的一些行为:

    • DO_NOTHING_ON_CLOSE:不执行任何操作,要求程序在已注册的 WindowListener 对象的 windowClosing 方法中处理该操作;
    • HIDE_ON_CLOSE:调用任意已注册的 WindowListener 对象后自动隐藏该窗体。
    • DISPOSE_ON_CLOSE:调用任意已注册 WindowListener 的对象后自动隐藏并释放该窗体。
    • EXIT_ON_CLOSE:使用 System exit 方法退出应用程序。仅在应用程序中使用。

    默认情况下,该值被设置为 HIDE_ON_CLOSE,即隐藏窗体。

    展开全文
  • 上节我们聊到GUI(Graphical User Interface)的概念,并学习GUI编程中主要需掌握两个包,分别是:AWT和Swing,本节我们会通过...JFrame控件用于在Swing程序中创建窗体。如表1所示,为JFrame常见的构造方法。 注意:

    上节我们聊到GUI(Graphical User Interface)的概念,并学习GUI编程中主要需掌握两个包,分别是:AWT和Swing,本节我们会通过Swing程序中常用的类和控件来实现第一个窗口。

    javax.swing.JFrame
    JFrame在GUI中为一个窗口对象,继承于Frame。JFrame控件用于在Swing程序中创建窗体。如表1所示,为JFrame常见的构造方法。
    这里写图片描述

    注意:
    Java语言规定在GUI编程中任何窗口实例化出来时默认为不可见(即隐藏)状态,所以当我们使用构造方法实例化JFrame对象时,是不可见的。
    JFrame中还包含了展示窗体和很多对窗体属性(如大小、颜色等)进行设置的方法,如表2所示。
    这里写图片描述

    了解了JFrame类常用的构造方法和成员方法后,接下来我们使用一个示例来创建一个简单的窗口,如示例1所示。

    【示例1】创建一个简单的窗口

    package cn.sxt.views.testjframe;
    
    import java.awt.Color;
    import javax.swing.JFrame;
    
    public class JFrameDemo1{
               public static void main(String[ ] args) {
                         JFrame f = new JFrame();//创建一个新窗体
                         f.setSize(500,400);//设置窗体大小
                         f.setVisible(true);//设置窗体可见
                         f.setBackground(Color.black);//设置颜色无效
               }
    }

    如上,main方法中的第一行代码实例化了一个窗口对象,第二行代码设置窗口的尺寸(注意:尺寸的定位为像素),因为窗口默认为不可见,所以第三行代码设置让窗口可见。在JFrame中还有一个show()方法也可以让窗口可见,但是不推荐使用,因为show()只能让窗口可见,但是setVisible如果传入参数true则窗口可见,传入参数false则窗口不可见,所以setVisible方法比show方法更加灵活。
    示例1的执行结果如图所示:

    这里写图片描述

    另外我们发现使用setBackground方法改变窗体颜色在JFrame中无效,因为该方法是继承于Frame的。在JFrame要用:JFrame.getContentPane().setBackground(Color.bule); 如示例2所示。

    【示例2】改变窗体的颜色

    package cn.sxt.views.testjframe;
    import java.awt.Color;
    import javax.swing.JFrame;
    
    public class JFrameDemo2{
               public static void main(String[ ] args) {
                         JFrame f = new JFrame();//创建一个新窗体
                         f.setSize(500,400);//设置窗体大小
                         f.setVisible(true);//设置窗体可见
                         //f.setBackground(Color.blue);//设置颜色无效
                         //若要使用JFrame改变窗体的颜色,需要使用该方法
                         f.getContentPane().setBackground(Color.black);
               }
    }

    执行结果如图所示:
    这里写图片描述

    上述两个示例中创建的窗体默认是可以由用户调整大小的,如果我们不想让窗口的大小随意调整,并且将创建窗体的代码进行封装,可以使用示例3中的代码。

    【示例3】创建不可调整大小的窗体

    package cn.sxt.views.testjframe;
    
    import javax.swing.JFrame;
    
    class JFrameDemo3 extends JFrame {
               public JFrameDemo3() {
                         init();
               }
               //该方法对窗口做初始化
               private void init() {
                         //设置窗口标题栏上信息
                         this.setTitle("第一个窗口");
                         //设置窗口大小为宽:500,高:400
                         this.setSize(500, 400);
                         //设置窗口不能被调整大小
                         this.setResizable(false);
                         //设置窗口可见
                         this.setVisible(true);
               }
    }
    
    public class Test {
               public static void main(String[ ] args) {
                         //调用JFrameDemo3的构造方法创建并显示窗体
                         new JFrameDemo3();
               }
    }

    执行结果如图所示:
    这里写图片描述
    图 示例3运行效果图
    但是细心的读者会发现,该窗口关闭时,应用程序并没有结束。这是因为Java规定:窗口默认的关闭模式只是不可见,这就导致我们关闭一个窗口时,窗口其实是隐藏了,而不是程序结束了,所以要解决这个问题,需要在init()方法中this.setVisible(true);这句代码之前添加this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 这个方法,该方法的功能是设置窗口的关闭模式,它的形参为int型,而JFrame已经为各种不同的关闭模式设置了常量,JFrame.EXIT_ON_CLOSE 的意思就是关闭时退出应用程序,此外常见的其他常量还有:JFrame.DISPOSE_ON_CLOSE(该常量的意思为:关闭时退出该窗口),JFrame.DO_NOTHING_ON_CLOSE (该常量的意思为:关闭时不做任何处理)等。

    但是在写init()方法时,建议将setVisible方法写在init方法中的最后一句,窗口设置完毕后再让窗口显示。调整JFrameDemo3中的代码如示例4所示。

    【示例4】设置窗体的关闭模式

    class JFrameDemo3 extends JFrame {
               public JFrameDemo3() {
                         init();
               }
               //该方法对窗口做初始化
               private void init() {
                         //设置窗口标题栏上信息
                         this.setTitle("第一个窗口");
                         //设置窗口大小为宽:500,高:400
                         this.setSize(500, 400);
                         //设置窗口不能被调整大小
                         this.setResizable(false);
                         //关闭窗口时,程序结束
                         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                         //设置窗口可见
                         this.setVisible(true);
               }
    }

    「全栈Java笔记」是一部能帮大家从零到一成长为全栈Java工程师系列笔记。笔者江湖人称 Mr. G,10年Java研发经验,曾在神州数码、航天院某所研发中心从事软件设计及研发工作,从小白逐渐做到工程师、高级工程师、架构师。精通Java平台软件开发,精通JAVAEE,熟悉各种流行开发框架。

    笔记包含从浅入深的六大部分:
    A-Java入门阶段
    B-数据库从入门到精通
    C-手刃移动前端和Web前端
    D-J2EE从了解到实战
    E-Java高级框架精解
    F-Linux和Hadoop

    展开全文
  • java_swing设置窗口居中的最佳方法
  • java 创建普通窗口

    2017-01-12 18:28:01
    java创建普通窗口
  • 简单设置窗口背景 直接代码伺候: package com.yufu.test; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.border....

    简单设置窗口背景

    直接代码伺候:

    package com.yufu.test;

    import java.awt.BorderLayout;
    import java.awt.EventQueue;

    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import javax.swing.border.EmptyBorder;
    import java.awt.Toolkit;

    public class 桌面背景的研究 extends JFrame {

    private static final long serialVersionUID = 1L;
    private JPanel contentPane;
    
    
    public static void main(String[] args) {
    	EventQueue.invokeLater(new Runnable() {
    		public void run() {
    			try {
    				桌面背景的研究 frame = new 桌面背景的研究();
    				frame.setVisible(true);
    			} catch (Exception e) {
    				e.printStackTrace();
    			}
    		}
    	});
    }
    
    /**
     * Create the frame.
     */
    public 桌面背景的研究() {
    	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    	setBounds(100, 100, 450, 300);
    	contentPane = new JPanel();
    	contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    	contentPane.setLayout(new BorderLayout(0, 0));
    	setContentPane(contentPane);
    	
    	bgMap bgm=new bgMap();
    	bgm.setImage(Toolkit.getDefaultToolkit().getImage(桌面背景的研究.class.getResource("/images/1.png")));
    	contentPane.add(bgm,BorderLayout.CENTER);
    	
    	
    }
    

    }


    需要重写下方法
    /

    package com.yufu.test;

    import java.awt.Graphics;
    import java.awt.Image;

    import javax.swing.JPanel;

    public class bgMap extends JPanel{

    private static final long serialVersionUID = 1L;
    private Image image;
    
    public bgMap() {
    	super();
    	setOpaque(false);
    	setLayout(null);
    }
    
    /**
     * 设置图片的方法
     */
    public void setImage(Image image) {
    	this.image = image;
    }
    
    @Override
    protected void paintComponent(Graphics g) {// 重写绘制组件外观
    	if (image != null) {
    		int width = getWidth();// 获取组件大小
    		int height = getHeight();
    		g.drawImage(image, 0, 0, width, height, this);// 绘制图片与组件大小相同
    	}
    	super.paintComponent(g);// 执行超类方法
    }
    

    }

    备注:
    前期工作:
    先确定窗口的大小,然后截个与窗口一样大小的图做窗口背景,背景图太大的化,运行直接报错。
    然后,项目里在src下新建文件夹,名称我定为images,直接复制背景图片到此文件夹,或者直接拖到此文件夹,弹出的对话框,直接确定。
    结构如下:
    在这里插入图片描述
    要点:
    ***必须有重写的方法。有了之后就有两种手段添加窗口背景:
    在这里插入图片描述
    然后1:
    切换到Design面板,看到contentPane下确实有个bgm的面板,因为有个自己重写的方法,新建初始化bgm 后状态栏里有images这个选项,点击边上…,可以看到刚才自己导入的图标文件夹,直接点击需要插入的图片。就成功加入窗口图片了。

    在这里插入图片描述
    在这里插入图片描述
    添加好后,点击运行后的效果图:
    在这里插入图片描述
    第二种方法:
    直接添加代码,前提是:图片和文件夹路径都要对.加入如下代码:
    在这里插入图片描述
    运行效果如下:
    在这里插入图片描述
    如上。

    展开全文
  • 主要介绍了JAVA Swing实现窗口添加课程信息过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • java swing GUI窗口美化

    万次阅读 多人点赞 2018-10-26 15:36:16
    一般我们写出的窗口是这个样子的,文本框和按钮都不是太美观,如果按钮是原色的就更难看了。 ...今天发现了一个更加美观的窗口模式 ...可以发现按钮和文本框都已经有了变化,给窗口... for (javax.swing.UIManage...
  • 请用Java Swing GUI组件设计用户登录界面,当用户在文本框中输入内容, **然后按下“确定”按钮时,把文本框中的内容放在下面的文本区域中。** ![图片说明]...
  • javaSwing各种主题窗口

    2013-09-30 07:26:38
    javaswing的各种主题窗口,包括window和苹果等不同系统上使用的窗口主题设置.
  • java swing 窗口布局

    千次阅读 2010-05-07 12:24:00
     javax.swing.*;   public   class  AppleExpertSystem {   public   static   void  main(String[] args) {  AppleMainFrame aesFrame =  new  AppleMainFrame( "系统" ); ...
  • java基础SWING窗口

    2011-05-06 19:39:34
    菜鸟专用(交流)!高手就不必了!呵呵!!!
  • Java Swing 图形界面开发(目录)

    万次阅读 多人点赞 2017-05-30 23:50:42
    Java Swing 图形界面(GUI)开发基础教程(目录)
  • java swing 窗口和控件自适应大小

    万次阅读 多人点赞 2017-05-24 12:56:04
    本文记录java开发CS结构时怎么自适应屏幕大小以及控件跟随frame大小变化大小、位置和字体大小 需要注意: 1、代码必须放置在其构造方法中。如:我的frame1是我frame.java的名,则代码放置在方法“public Frame1()...
  • NULL 博文链接:https://hw1287789687.iteye.com/blog/2142935
  • Swing窗口中JFrame窗体简单认识SwingJFrame窗体 简单认识Swing Swing 是一个为Java设计的GUI工具包。 Swing是JAVA基础类的一部分。 Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。 Swing...
  • Java Swing 阻止窗口关闭

    千次阅读 2011-11-02 15:18:59
    Java Swing窗口中,使用addWindowListener()添加窗口事件监听器,仅仅是得到窗口事件的通知,并不能阻止窗口的动作(如隐藏),要想阻止窗口的默认动作,可以使用如下方式:   public class AFrame extends ...
  • java swing 窗口界面关闭事件响应

    万次阅读 2012-12-26 20:25:29
    swing窗口里面,即jframe里面,进行关闭窗口动作,如果事先不在代码中设置好,则默认是把窗口设成setVisable(false),程序还是依然运行着,继续占用内存,所以如果不小心,越调试则会发现内存占用率越高,机子...
  • java登录窗口swing,界面设计,java源代码
  • Java学习历程,用Swing做一件简单的窗口。暂时没有实现任何功能 环境:mac 软件:eclipse 代码如下: // //用swing做一个简单的窗口 //Created by Lee_1310 on 2019.03.21 02:18pm //Copyright @...
  • 实现: 如果子窗口设置为 ... ...如果想关闭子窗口而不关闭父窗口,那么将子窗口设置为 setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); JFrame.EXIT_ON_CLOSE表示使用的是System.exit...
  • java swing 窗口背景色设置

    千次阅读 2019-12-02 14:33:04
    //设置窗口大小 // f.setBackground(bgColor); //错误,不能显示设定颜色 // f.setForeground("Color.black"); //提示使用setForeground,意思是前景色 f.getContentPane().setBackground(bgColor); //正确显示...
  • java swing窗口的logo图片设置

    千次阅读 2017-04-12 14:07:54
    最近在做一款项目,用到了Javaswing界面,界面的logo设置,分享给大家    //图标logo  Image icon = Toolkit.getDefaultToolkit().getImage("src/com/dongrun/dataCollection/logo.gif");  this....
  • Java Swing 图形界面开发简介

    万次阅读 多人点赞 2017-05-30 23:52:47
    Java Swing GUI 图形界面窗口开发基础教程,本教程将系统性地详细介绍 Swing 开发中常用的一些组件、布局管理器等相关知识技术,并且每章节都将通过代码实例展示实际应用。SwingJava 为图形界面应用开发提供的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 35,819
精华内容 14,327
关键字:

java如何创建swing窗口

java 订阅