首页 > 编程语言 >java swing创建一个窗口

java swing创建一个窗口

时间:2023-02-25 17:55:19浏览次数:37  
标签:窗口 java swing contentPane new import public

新建一个窗口类

package com.rzk;


import javax.swing.*;
import java.awt.*;

public class SwingFrame extends JFrame {

    JLabel label = new JLabel("输入名");

    //创建JTextField,16表示16列,用于JTextField的宽度显示而不是限制字符个数
    JTextField textField = new JTextField(16);
    JButton button = new JButton("确定");

    public SwingFrame(String title) throws HeadlessException {
        //集成父类
        super(title);

        //内容面板
        Container contentPane = getContentPane();
        contentPane.setLayout(new FlowLayout());

        //添加控件
        contentPane.add(label);
        contentPane.add(textField);
        contentPane.add(button);

        //按钮点击处理 lambda表达式
        button.addActionListener((e)->{
            onButtonOk();
        });

    }

    //事件处理
    private void onButtonOk(){
        String text = textField.getText();//获取内容
        //判断是否输入
        if (text.equals("")){
            Object[] options = { "OK ", "CANCEL " };
            JOptionPane.showOptionDialog(null,
                    "您还没有输入 ",
                    "提示",
                    JOptionPane.DEFAULT_OPTION,
                    JOptionPane.WARNING_MESSAGE,
                    null,
                    options,
                    options[0]);
        }
        else{
            JOptionPane.showMessageDialog(this,"您输入了:" + text);
        }
    }
}

新建一个主程序运行

import javax.swing.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class rzkMain {
   
    public static void main(String[] args) {
        javax.swing.SwingUtilities.invokeLater(
                new Runnable(){
                    @Override
                    public void run() {
                        createGUI();
                    }
                }
        );
    }

    private static void createGUI(){
        //创建一个窗口,创建一个窗口
        SwingFrame frame = new SwingFrame("睿共享资源");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //设置窗口大小
        frame.setSize(600,400);
        //显示窗口
        frame.setVisible(true);
    }
}

标签:窗口,java,swing,contentPane,new,import,public
From: https://www.cnblogs.com/rzkwz/p/17154911.html

相关文章

  • java-树形结构数据
    在我们实际开发中会接触到树形结构,根节点子节点,然后添加数据构成了我们的树形结构,在Java后台利用递归思路进行构建树形结构数据,返回给前端,能以下拉菜单等形式进行展示......
  • Java中的代码块
    Java中的代码块我们在做笔试题的时候经常会遇到考察类中代码块运行顺序的题,所以我现在把它总结一下。在Java中,代码块(Block)是用一对大括号括起来的一段代码,它可以包含多条......
  • java security 详解_Spring Security入门教程
    SpringSecurity的简单使用简介SSM整合Security是比较麻烦的,虽然Security的功能比Shiro强大,相反却没有Shiro的使用量多SpringBoot出现后简化了Spring系列的配置......
  • java HashMap
    publicstaticvoidmain(String[]args){Map<Integer,String>m=newHashMap<>();//增m.put(1,"111");m.put(2,"2......
  • JavaWeb-动力节点
    目录......
  • 2023.8 Java与Python
    Java与Python都一直在各种流行编程语言中名列前茅,也有很多相似之处。作为技术人员,我们不能把自己局限在某一项技术或编程语言中,而应该能针对具体场景快速选择适合的技术解......
  • javascript
    JavaScriptjs嵌入001-方式一<!doctypehtml><html> <head> <title>HTML中嵌入JS代码的第一种方式</title> </head> <body> <!-- 1、要实现的功能: ......
  • Java内存区域与内存溢出异常
    一、Java内存区域1、运行时数据区JDK1.8之前JDK1.8之后2、程序计数器一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器由于Java虚拟机的多线程......
  • java Vector
    publicstaticvoidmain(String[]args){Vectorv=newVector();//增v.addElement(111);v.addElement(222);v.addElem......
  • java——spring boot集成RabbitMQ——spring boot实现路由模式——消费者
    pom文件:<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instanc......