美文网首页
Java图形化:JComponent组件

Java图形化:JComponent组件

作者: 我的袜子都是洞 | 来源:发表于2019-01-18 23:01 被阅读5次

JComponent是一个和JPanel很相似的组件的容器,但又有区别。
JPanel不透明,所以在需要透明等应用场景的条件比较麻烦,使用JComponent比较方便。

package swing;

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

/**
 * @author: 我的袜子都是洞
 * @description:
 * @path: tourJava-swing-NotHelloWorld
 * @date: 2019-01-18 22:48
 */
public class NotHelloWorld {
    public static void main(String[] args) {
        EventQueue.invokeLater(() -> {
            JFrame frame = new NotHelloWorldFrame();
            frame.setTitle("Not Hello World");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setVisible(true);
        });
    }
}

class NotHelloWorldFrame extends JFrame {
    public NotHelloWorldFrame () {
        add(new NotHelloWorldComponent());
        // 调整窗口大小,要考虑到其组件的首选大小
        pack();
    }
}

/**
 * JComponent不同于JPanel,JPanel不透明,JComponent透明
 */
class NotHelloWorldComponent extends JComponent {
    public static final int MESSAGE_X = 75;
    public static final int MESSAGE_Y = 100;

    public static final int DEFAULT_WIDTH = 300;
    public static final int DEFAULT_HEIGHT = 200;

    public void paintComponent (Graphics g) {
        g.drawString("Not a hello world program", MESSAGE_X, MESSAGE_Y);
    }

    public Dimension getPreferredSize () {
        return new Dimension(DEFAULT_WIDTH, DEFAULT_HEIGHT);
    }
}

运行效果:


JComponent容器

相关文章

  • Java图形化:JComponent组件

    JComponent是一个和JPanel很相似的组件的容器,但又有区别。JPanel不透明,所以在需要透明等应用场...

  • swing

    Swing结构图 window我认为可以理解为容器,Jcomponent可以理解为组件,JPanel为面板,组件放...

  • 2017 MongoDB 中国开发者大会总结

    1、可视化组件(charts):应该是集成开源的JS图形化组件,如amCharts等(注:普通无竞争力) 2、后端...

  • JComponent 类的功能

    边框设置:使用 setBorder() 方法可以设置组件外围的边框,使用一个 EmptyBorder 对象能在组件...

  • Linux编程-Lunix命令行

    Linux组成 Linux内核GNU工具组件图形化桌面环境应用软件 二、shell命令 常用的shell命令 a)...

  • 04 在Vue项目中使用Vant组件库

    关于vant vant —— 轻量、可靠的移动端 Vue 组件库 安装 通过npm 或是通过Vue Cli 图形化...

  • Android 网络编程3 Java NIO

    Android网络编程 目录 1、Java NIO 的核心组件 Java NIO的核心组件包括:Channel(通...

  • KETTLE部署CENTOS7并添加远程图形界面访问

    安装运行环境 1.kettle需要java环境才能运行,因此要安装Java,点击我查看部署jdk。 2.安装图形化...

  • JAVA 分析工具

    jconsole 图形化查看界面jmap -dump:file=a 6626 将pid为6626的java程序的信...

  • net-snmp开发详解

    net-snmp重要组件 基于Tk/perl的图形化MIB浏览器。 接收snmp消息的后台进程Snmptrapd。...

网友评论

      本文标题:Java图形化:JComponent组件

      本文链接:https://www.haomeiwen.com/subject/cbnodqtx.html