java ColorChooser
简介
java 核心编程
创建了三个chooser。一个是模态,一个是非模态,一个是非模态实时。
放入别的frame 进行了展示
image

code
/*
* @Author: your name
* @Date: 2020-11-08 15:59:26
* @LastEditTime: 2020-11-08 16:15:56
* @LastEditors: Please set LastEditors
* @Description: In User Settings Edit
* @FilePath: /java/colorChooser/ColorChooserPanel.java
*/
package optionDialog;
import java.awt.Color;
import java.awt.Frame;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JColorChooser;
import javax.swing.JDialog;
import javax.swing.JPanel;
import java.awt.*;
import javax.swing.*;
public class ColorChooserPanel extends JPanel {
public ColorChooserPanel() {
JButton modalButton = new JButton("Modal");
modalButton.addActionListener(new ModalListener());
add(modalButton);
JButton modelessButton = new JButton("Modeless");
modelessButton.addActionListener(new ModelessListener());
add(modelessButton);
JButton immediateButton = new JButton("Immediate");
immediateButton.addActionListener(new ImmediateListener());
add(immediateButton);
}
private class ModalListener implements ActionListener {
public void actionPerformed(ActionEvent event) {
Color defaultColor = getBackground();
Color selected = JColorChooser.showDialog(ColorChooserPanel.this, "Set background", defaultColor);
if (selected != null) {
setBackground(selected);
}
}
}
private class ModelessListener implements ActionListener {
private JDialog dialog;
private JColorChooser chooser;
public ModelessListener() {
chooser = new JColorChooser();
dialog = JColorChooser.createDialog(ColorChooserPanel.this, "Background Color", false, chooser,
event -> setBackground(chooser.getColor()), null);
}
public void actionPerformed(ActionEvent event) {
chooser.setColor(getBackground());
dialog.setVisible(true);
}
}
private class ImmediateListener implements ActionListener {
private JDialog dialog;
private JColorChooser chooser;
public ImmediateListener() {
chooser = new JColorChooser();
chooser.getSelectionModel().addChangeListener(event -> setBackground(chooser.getColor()));
dialog = new JDialog((Frame) null, false);
dialog.add(chooser);
dialog.pack();
}
public void actionPerformed(ActionEvent event) {
chooser.setColor(getBackground());
dialog.setVisible(true);
}
}
}
java ColorChooser的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 万能的林萧说:一篇文章教会你,如何做到招聘要求中的“要有扎实的Java基础”。
来历 本文来自于一次和群里猿友的交流,具体的情况且听LZ慢慢道来. 一日,LZ在群里发话,"招人啦." 然某群友曰,"群主,俺想去." LZ回之,"你 ...
- [JAVA] 一个可以编辑、编译、运行Java简单文件的记事本java实现
本来是Java课做一个仿windows记事本的实验,后来突然脑子一热,结果就给它加了一个编译运行Java文件的功能. 本工程总共大约3000行代码,基本上把所学的java界面.文件.控件的功能都包含在 ...
- Java sun的JDK
JDK概述 JDK(Java Development Kit)是Sun Microsystems针对Java开发员的产品.自从Java推出以来,JDK已经成为使用最广泛的Java SDK(Softwa ...
- Java可视化AWT
AWT 总体上Swing组件替代了绝大部分AWT组件,对AWT图形用户界面编程有极好的补充和加强. package ch11; import java.awt.*; /** * Created by ...
- 一篇文章教会你,如何做到招聘要求中的“要有扎实的Java基础
来历 本文来自于一次和群里猿友的交流,具体的情况且听LZ慢慢道来. 一日,LZ在群里发话,“招人啦.” 然某群友曰,“群主,俺想去.” LZ回之,“你年几何?” 群友曰,“两年也.” LZ憾言之,“惜 ...
- java实现渐变效果工具
[html] view plain copy package gradient; import java.awt.Color; import java.awt.Dimension; import ja ...
- java常用系统包介绍
java.applet提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类.java.awt包含用于创建用户界面和绘制图形图像的所有类.java.awt.colo ...
- [注意事项&车轮]java源代码 产生局部javadoc api档
随着Eclipse书写java码时间,有时候,因为我们不知道java函数返回.通过鼠标移动到java该功能,假设它javadoc相关内容将被显示. 但是,并非所有java代码javadoc:连装jav ...
- 201771010126 王燕《面向对象程序设计(Java)》第十四周学习总结(测试程序11)
实验十四 Swing图形界面组件 理论部分: 不使用布局管理器 有时候可能不想使用任何布局管理器,而只 是想把组件放在一个固定的位置上.下面是将一 个组件定位到某个绝对定位的步骤: 1)将布局管理器 ...
随机推荐
- 在 Go 语言中,构造一个并发安全的 map 集合
Map 集合是 Go 中提供的一个 KV 结构的数据类型,对它的操作在实际的开发中应该是非常多的,不过它不是一个线程安全的. 1 .Map 不是线程安全的 编写下面的测试代码: func TestUn ...
- HTML用JS导出Excel的五种方法,无需js-xlsx库
原文地址:https://blog.csdn.net/aa122273328/article/details/50388673 这五种方法前四种方法只支持IE浏览器,最后一个方法支持当前主流的浏览器( ...
- 网鼎杯朱雀组-GO
这里猜测是魔改base64 尝试替换回去 import string import base64 new="XYZFGHI2+/Jhi345jklmEnopuvwqrABCDKL6789ab ...
- 异步IO与Tortoise-ORM的数据库
title: 异步IO与Tortoise-ORM的数据库 date: 2025/04/29 13:21:47 updated: 2025/04/29 13:21:47 author: cmdragon ...
- dotnet-trace 分析.net程序性能
在现代 .NET 开发中,性能分析和故障诊断是确保应用程序稳定性和高效性的关键步骤. 本文将介绍如何使用 dotnet-trace 工具进行 .NET Core 应用的性能跟踪,并结合 PerfVie ...
- 操作系统 -- 第一个C函数
前面我们为调用Cosmos 的第一个C函数hal_start做了大量的工作,本节要让操作系统Cosmos里的第一个C语言真正跑起来. 继续在hal_start函数里,首先执行板级初始化,其实就是hal ...
- kubernetes集群之GC处理
一.简单说明 GC(Garbage Collector)即垃圾收集清理,kubernetes集群中,kubelet的GC功能将会清理未使用的image和container.其中kubelet对cont ...
- 基于Spring AI服务,开发MCP服务
大家好,好久没有写博客了,最近突然想写一些新的东西,如何开发mcp服务,本地如何调试. 一.项目概述 Spring AI MCP Demo 是一个基于 Spring 生态的多模块应用工程,主要围绕 A ...
- 杭州联合银行 x 袋鼠云:打造智能标签体系,助力银行大零售业务转型
"智能标签平台上线后,支行及业务部门已创建多个客群用于营销,为我行客户精细化管理打下了良好基础." 杭州联合银行始终以服务市民.小微企业.经济组织和地方经济发展为己任,本着&quo ...
- 官宣!Taier1.3新版本正式发布,新鲜功能抢先体验
2022年11月7日,Taier1.3版本正式发布! Taier 是一个大数据分布式可视化的DAG任务调度系统,旨在降低ETL开发成本.提高大数据平台稳定性,大数据开发人员可以在 Taier 直接进行 ...