Java图像处理之RGB调色面板

网友投稿 249 2022-09-29

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();

}

}

三、结QvCAC果演示

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:kafka技术内幕学习笔记(二)
下一篇:如何彻底删除EKS中一直卡在Terminating的Namespace
相关文章

 发表评论

暂时没有评论,来抢沙发吧~