Java图像处理之RGB调色面板

 更新时间:2022年06月10日 11:48:28   作者:智慧的猪-  
这篇文章主要为大家详细介绍了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();
    }
}

三、结果演示

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 深入解析Apache Kafka实时流处理平台

    深入解析Apache Kafka实时流处理平台

    这篇文章主要为大家介绍了Apache Kafka实时流处理平台深入解析,从基本概念到实战操作详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2024-01-01
  • Java Swing中的表格(JTable)和树(JTree)组件使用实例

    Java Swing中的表格(JTable)和树(JTree)组件使用实例

    这篇文章主要介绍了Java Swing中的表格(JTable)和树(JTree)组件使用实例,本文同时讲解了表格和树的基本概念、常用方法、代码实例,需要的朋友可以参考下
    2014-10-10
  • Java基础之Thymeleaf的简单使用

    Java基础之Thymeleaf的简单使用

    这篇文章主要介绍了Java基础之Thymeleaf的简单使用,文中有非常详细的代码示例,对正在学习java基础的小伙伴们有非常好的帮助,需要的朋友可以参考下
    2021-04-04
  • Hibernate核心类和接口的详细介绍

    Hibernate核心类和接口的详细介绍

    今天小编就为大家分享一篇关于Hibernate核心类和接口的详细介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • MyBatis 参数类型为String时常见问题及解决方法

    MyBatis 参数类型为String时常见问题及解决方法

    这篇文章主要介绍了MyBatis 参数类型为String时常见问题及解决方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • servlet之cookie简介_动力节点Java学院整理

    servlet之cookie简介_动力节点Java学院整理

    Cookie技术诞生以来,它就成了广大网络用户和Web开发人员争论的一个焦点。下面这篇文章主要给大家介绍了关于servlet之cookie简介的相关资料,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • 解析SpringBoot项目开发之Gzip压缩过程

    解析SpringBoot项目开发之Gzip压缩过程

    这篇文章主要介绍了SpringBoot项目开发之Gzip压缩过程,本文给大家分享几种Gzip压缩方式,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • Spring MVC+FastJson+Swagger集成的完整实例教程

    Spring MVC+FastJson+Swagger集成的完整实例教程

    这篇文章主要给大家分享介绍了关于Spring MVC+FastJson+Swagger集成的完整实例教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2018-04-04
  • 将RestTemplate的编码格式改为UTF-8,防止乱码问题

    将RestTemplate的编码格式改为UTF-8,防止乱码问题

    这篇文章主要介绍了将RestTemplate的编码格式改为UTF-8,防止乱码问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • Spring boot security权限管理集成cas单点登录功能的实现

    Spring boot security权限管理集成cas单点登录功能的实现

    这篇文章主要介绍了Spring boot security权限管理集成cas单点登录,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03

最新评论