Java图像处理之RGB调色面板
本文实例为大家分享了Java图像处理之RGB调色面板的具体代码,供大家参考,具体内容如下
一、概述
因为我们知道颜色是由R、G、B、三种颜色所组成的,那么我们只需要更改这三个的数值。我们就可以实现一个简单的调色面板;以下是代码演示:
二、代码
import javax.swing.*; import java.awt.*; import java.awt.event.ActionListener; import java.awt.event.*; public class RgbJpanel {int r,g,b; JFrame jf = new JFrame("RGB调色面板"); // 一个用于设置RGB调色,一个用于显示背景颜色JPanel jp_1 = new JPanel(); JPanel jp_2 = new JPanel(); JLabel jl_1 = new JLabel("R值"); JLabel jl_2 = new JLabel("G值"); JLabel jl_3 = new JLabel("B值"); JTextField jtf_1 = new JTextField(); JTextField jtf_2 = new JTextField(); JTextField jtf_3 = new JTextField(); JButton jb = new JButton("确定"); public RgbJpanel(){button(); // 使用自定义布局管理器jp_1.setLayout(null); jf.setLayout(null); // 设置固定位置jf.setBounds(200,200,500,600); jp_1.setBounds(0,0,200,600); // 设置字体位置jl_1.setBounds(50,30,50,30); jl_2.setBounds(50,180,50,30); jl_3.setBounds(50,330,50,30); // 设置字体大小jl_1.setFont(new Font("黑体",Font.BOLD,20)); jl_2.setFont(new Font("黑体",Font.BOLD,20)); jl_3.setFont(new Font("黑体",Font.BOLD,20)); jtf_1.setBounds(50,70,50,50); jtf_2.setBounds(50,220,50,50); jtf_3.setBounds(50,370,50,50); jb.setBounds(50,440,80,40); jp_2.setBounds(300,200,150,150); jp_1.setBackground(new Color(150,150,150)); jp_1.add(jl_1); jp_1.add(jl_2); jp_1.add(jl_3); jp_1.add(jtf_1); jp_1.add(jtf_2); jp_1.add(jtf_3); jp_1.add(jb); jf.add(jp_1); jf.add(jp_2); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); jf.setVisible(true); }// 按钮public void button(){// jb按钮,监听事件jb.addActionListener( new ActionListener() {public void actionPerformed(ActionEvent e){r = Integer.parseInt(jtf_1.getText()); g = Integer.parseInt(jtf_2.getText()); b = Integer.parseInt(jtf_3.getText()); // 这里进行取余运算,是为了防止输入的数过于大,而产生运行上的错误;r = r%256; g = g%256; g = g%256; //System.out.println("r = "+r +" ,g = "+g +" ,b = "+b); // 清空Text中的内容jtf_1.setText(""); jtf_2.setText(""); jtf_3.setText(""); // 一定要在这里设置改变颜色才可以,不然没有反应jp_2.setBackground(new Color(r,g,b)); }}); }public static void main(String[] args) {new RgbJpanel(); }}
三、结果演示
文章图片
文章图片
【Java图像处理之RGB调色面板】以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
推荐阅读
- Java数字图像处理之图像灰度处理
- #yyds干货盘点#将CSV的数据发送到kafka(java版)
- 准时下班系列!Access合集之第5集—闭环的Access系统开发流程演示
- 《OpenHarmony 3GPP协议开发深度剖析》之--PLMN业务源码解读
- 红黑树
- CentOS6.5之Bind服务器基础配置
- Flink的sink实战之四(自定义)
- C++ 炼气期之基本结构语法中的底层逻辑
- spring4.1.8初始化源码学习三部曲之三(AbstractApplicationContext.refresh方法)
- 基于eBPF的云原生可观测性开源项目Kindling之Dubbo2 协议开发流程