用JAVA语言编写的取色器

Delphi实现的屏幕截图与取色工具完整指南 Delphi编程语言,自1995年首次发布以来,已经成为Windows应用程序开发领域的重要工具之一。通过其快速的应用开发(RAD)特性,Delphi极大地缩短了软件开发周期,使得开发人员能够专注于业务逻辑的实现,而不是底层代码的编写。动态链接库(DLL)是包含可由多个程序同时使用的代码和数据的库。与静态库不同,静态库在程序编译时会被链接到程序中,而DLL则是在运行时由操作系统加载。这种分离编译和链接的方式,给程序设计带来了极大的灵活性。DLL的优势主要体现在以下几个方面:资源共享。 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> ....这是一个用JAVA语言编写的取色器.在WIN98下用VJ 调试通过.它利用JAVA语言的特点,增加了一般的取色器没有的功能:动态显示和确定所设对象的颜色.直观而方便.取色器可在具体应用程序中分别设置两种不同的使用方式. (一)方式1:同一般的取色器(如Windows9X的取色器)用法相同. 1.点击"确定键"后,返回所取颜色,取色器关闭. 2.点击"取消键"后,返回空值,取色器关闭. 3.点击"关闭键"后,返回空值,取色器关闭. 4.选取"色框"项后,显示基本颜色框. 基本颜色框的最下 面两行由用户自定义颜色. 用鼠标右键点击它, 即可将当前所取颜 色设置给它. 5.取消"色框"项后,隐藏基本颜色框. (二)方式2:增加了动态显示和设置的功能. 1.只有在点击"关闭键"后,取色器才关闭. 2.在不关闭取色器的情况下,可先后对多个对象进行颜色设置. 3.选取"动态"项后,可动态显示和确定所设对象的颜色. 4.取消"动态"项后,按"确定键"才设置和显示所设对象的颜色. 5.点击"取消键"后,返回并恢复所设对象原有的颜色. 在名为“颜色设置”的使用例程中,点击“方式1 键”打开取色器。 另两个“方式2 键”和四个颜色块用鼠标右键点击它,打开取色器.当取色器 已经打开时,用鼠标左键点击它为选中. 以下是使用例程的源程序. 若有对全部源程序感兴趣者请来信洽谈. 李先利 lxlsoft@263.net





//=====JAVA取色器 ColorDialog 使用例程的源程序=======



import java.awt.*; 

import java.awt.event.*; 

import java.applet.* ; 



class SetObjectColor extends Applet

{



/* 

public static void main(String args[])

{ 



new ColorObjectFrame();



}

*/





public void init()

{



new ColorObjectFrame();



}



}



class ColorObjectFrame extends Frame implements ActionListener, MouseListener 

{



Button btnColor1=new Button(" 方式 1 ") ,

btnColor2=new Button(" 方式 2 "),

btnColor3=new Button(" 方式 2 ");

Label labColor =new Label (" 方式 2 ");

Canvas cavColor1=new Canvas( ),

cavColor2=new Canvas( ),

cavColor3=new Canvas( ),

cavColor4=new Canvas( );

Graphics offGraphics ;

ColorDialog ClrDilg1,ClrDilg2;



ColorObjectFrame()

{



move(300,150);

setTitle("颜色设置 方式2按右键弹出");

setName("ColorObjectFrame");

setSize(250,280);

setResizable(false);

setBackground(Color.gray.brighter());

setFont(new Font( "",Font.PLAIN ,18));



setLayout(new BorderLayout());

Panel p1=new Panel();

Panel p2=new Panel();

add("Center",p1);

add("South",p2);



p1.setLayout(new FlowLayout());

p1.add( btnColor1);

p1.add( btnColor2);

p1.add( btnColor3);

p1.add( labColor);

p2.setLayout(new GridLayout (2,2)); 

cavColor1.setSize(1,40);

p2.add( cavColor1); cavColor1.setBackground(Color.red); 

p2.add( cavColor2);cavColor2.setBackground(Color.yellow);

p2.add( cavColor3);cavColor3.setBackground(Color.blue);

p2.add( cavColor4);cavColor4.setBackground(Color.green);



btnColor1.addActionListener(this);

//btnColor2.addActionListener(this);



btnColor2.addMouseListener(this);

btnColor3.addMouseListener(this);

cavColor1.addMouseListener(this);

cavColor2.addMouseListener(this);

cavColor3.addMouseListener(this);

cavColor4.addMouseListener(this);



addWindowListener( new CloseWin());

show()



}



public void actionPerformed(ActionEvent e)

{



if(e.getSource()==btnColor1)

{

// 方式1:不需要注册颜色对象,同VB中Windows的取色器用法相同.

// 参数 boolean isMolde 必需取 true.



if(ClrDilg1==null)



ClrDilg1=new ColorDialog(this,"颜色1 ",true);



ClrDilg1.setColor(btnColor1.getBackground());

ClrDilg1.show();

if(ClrDilg1.getColor()!=null)

btnColor1.setBackground(ClrDilg1.getColor()); 



//setColor与方式1 相配;

//使用,则在取色板显示该颜色的数值;也可不使用.

//getColor()与方式1 相配;

}



}



public void mousePressed(MouseEvent e)

{ //"按下



Object obj;

obj=e.getSource();



if(e.getModifiers()==MouseEvent.BUTTON1_MASK )

{ //"按下左键"



//repaint();

if(ClrDilg2!=null && ClrDilg2.isShowing())

{



if(obj.toString().indexOf("Button")>=0 || obj.toString().indexOf("Canvas")>=0)

{



ClrDilg2.setResizable(true);

ClrDilg2.setObject(obj,false); 



//与方式2 相配.obj可以是具体的对象名如:cavColor1;

//true: 在取色板显示对象obj的原有颜色的数值;

//false: 不改变取色板中的原有取色.

}



}



}





if(e.getModifiers()==MouseEvent.BUTTON3_MASK)

{ // "按下右键"; 



if(obj.toString().indexOf("Button")>=0 ||

obj.toString().indexOf("Canvas")>=0)

{

// 方式2:需要注册颜色对象.参数 boolean isMolde 一般取 false 



if(ClrDilg2==null)



ClrDilg2=new ColorDialog(this,"颜色2 ",false);



ClrDilg2.setObject(obj,true);

ClrDilg2.show();



//与方式2 相配.obj可以是具体的对象名如:cavColor1;

//true: 在取色板显示对象obj的原有颜色的数值;

//false: 不改变取色板中的原有取色.

}



}



}

public void mouseReleased(MouseEvent e){ } //"放开" 

public void mouseEntered(MouseEvent e){ }//"进入";

public void mouseExited(MouseEvent e){ }//"退出";

public void mouseClicked(MouseEvent e){ }// if(e.getClickCount()==1) //"单击"



}





class CloseWin extends WindowAdapter 

{



public void windowClosing(WindowEvent e)

{



if(e.toString().indexOf("Dialog")>=0 )

{



Dialog frm=(Dialog)(e.getSource());

frm.dispose();



}



if(e.toString().indexOf("Frame")>=0 )

{



Frame frm=(Frame)(e.getSource());

frm.dispose();

if(frm.getName().equals("ColorObjectFrame") )

System.exit(0);



}



}

--------------------------------------------------------------------------------
无需安装的即时屏幕取色工具 屏幕取色工具是设计师和开发人员不可或缺的实用软件,它能够从电脑屏幕上的任何位置提取颜色,并将其转换为可使用的颜色代码。无论是RGB值还是十六进制代码,这类工具都能轻松提供。在设计和编程工作中,准确快速地获取颜色信息至关重要,而屏幕取色工具正是为此而生。通过简单的界面和直观的操作,用户可以轻松实现对屏幕颜色的精确取样,从而提高工作效率,确保色彩的一致性和准确性。接下来的章节将探讨该工具无需安装即可使用的便捷性,并深入分析其在不同操作系统下的兼容性和工作原理。 阅读详情

相关推荐

QT C++ 色相环取色功能代码项目实战

色相环是一个图形工具,它以连续的圆环形式展示颜色的不同色相,方便用户选择和理解颜色的多样性。色相环基于HSL(色相、饱和度、亮度)颜色模型,是设计师和开发人员在UI设计、图形处理等领域经常使用的工具。QT是一个跨平台的应用程序框架,广泛应用于开发图形用户界面程序。QT框架支持C++语言,同时也提供了Python、Java等语言的绑定接口。其主要特点包括丰富的模块、强大的信号与槽机制和对多种操作系统平台的原生支持。

weixin_42575109的博客 465

Java版取色器(6)——实现具体功能

本章概要:实现该项目的具体功能 1、上节回顾: 由于需要对界面的组件进行一些操作,所以应该定义一些变量在方法之外,以便整个类能够进行调用,其实并没有什么改变。 其中Main.java的内容如下: package com.mycom.myapp.colorpicker; import javax.swing.*; import javax.swing.border.TitledBord...

二木成林 1066

ColorPicker-master:基于C++的轻量级取色工具实战项目

ColorPicker是一款专为高效色彩采集设计的轻量级桌面工具,面向设计师、前端开发者及数字创意工作者。软件支持实时屏幕取色,可精准捕获任意像素颜色,并即时转换为RGB、HSV、CMYK等多种标准格式,满足跨平台、跨设备的设计需求。核心功能涵盖一键复制颜色值、色板预览、历史记录持久化及深色/浅色主题切换,提升操作便捷性与视觉舒适度。定义抽象基类支持自定义布局:public:便于未来集成 Adobe ASE、GPL 等格式导入。

weixin_35752645的博客 1194

Java 获取颜色color函数

我整理的一些关于【Java】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://d.51cto.com/bLN8S1Java 中的颜色获取函数 颜色在计算机图形学中起着至关重要的作用。在Java编程语言中,我们经常需要处理不同的颜色来实现丰富多彩的图形界面。本文将详细介绍如何在Java中获取颜色,包含相...

weixin_40624683的博客 703

java颜色取色器

能够获取鼠标所在位置的rgb值,同时也能够设置rgb值,查看颜色,其中代码在上传jar文件中,将jar文件解压即可

Java屏幕取色器(windows)

该工具主要用于颜色的识别,将指定颜色转化为16进制颜色代码,用于前端文件中。

java+取色器_用JAVA语言编写的取色器

//=====JAVA取色器 ColorDialog 使用例程的源程序=======import java.awt.*;import java.awt.event.*;import java.applet.* ;class SetObjectColor extends Applet{/*public static void main(String args[]){new ColorObjectFr...

weixin_39901685的博客 298

屏幕取色工具(java)

文章http://www.blogjava.net/pengo/archive/2011/01/16/343064.html的附件运行程序,需要jr6虚拟机。

java 取色器_Java取色器

使用上稍微不太习惯,但总比到各个不靠谱的下载站下载个病毒的软件要好多了,鼠标点选要获取的地方,然后点击alt即可获取到颜色值效果图如下:Java取色器开发背景:自己的想法能用各种代码的组合实现出来,真的很有成就感啊,哈哈。在你想要的颜色上面点下ALT键,就这么简单。.exe文件使用exe4j做的,在我的机子上能用,没有别的机子进行测试,要是不能用,请通知我。今天对前几天做的取色器进行了修改,去掉...

weixin_39606177的博客 675

Java仿takeColor取色器.zip

1.获取鼠标位置的颜色,当前鼠标的位置,并将其显示到面板中 2.实时根据鼠标位置的不同,更新面板颜色,以及标签体内容 3.使用快捷键,获取颜色的RGB值,并添加到列表框中 4.复制按钮:复制所选内容到系统剪切板 5.可以设置放大镜的倍数 6.使用配置文件,加载各种设置 7.可以自定义快捷键,提高体验

java颜色代码

各种颜色所对应的代码,可应用于html,css以及java开发中使用,用作查阅使用

Java应用---Design for Coder(集截屏,取色,放大,画图)为一体

记得以前闲来无事的时候做过一个java小应用,将截屏,取色,放大镜,画图功能集成在一起的       小应用软件。采用的是Swing技术。笔者其实是个菜鸟,但是对java的Swing还是比较喜欢的。                每个人都有这样的思维,或许说习惯更为恰当吧!我们在学习完一门语言的基本语法之后       总是“迫不及待”的想了解这门语言到底能够做什么?这种“冲动”使我们真正的

LCore的专栏 4233

从UC3842的FB脚到COMP脚:一次讲透反激电源两种光耦反馈接法的选择与实战

本文深入探讨了UC3842 PWM控制器在反激式开关电源设计中的两种光耦反馈接法:FB脚与COMP脚方案。通过分析信号极性差异、稳定性特点及动态响应性能,提供场景化选型指南和可靠性设计要点,帮助工程师优化反馈环路设计,提升系统稳定性与效率。特别针对TL431和PC817等关键元件在温度漂移、老化衰减等实际问题给出解决方案。

weixin_28717683的博客 710

Java应用---Design for LCore(集截屏,取色,放大,画图,托盘)为一体(含源码)

前言 翻翻自己的U盘,里面的咋东西实在太多了。清理下,无意中发现了以前自己做的小工具。将截屏,取色,放大镜,画图功能集成在一起 的小应用软件。采用的是Swing技术。笔者其实是个菜鸟,但是对java的Swing还是比较喜欢的。 每个人都有这样的思维,或许说习惯更为恰当吧!我们在学习完一门语言的基本语法之后总是“迫不及待”...

WJT576436的博客 204

2021.11.23 Covins 多机器人单目协同建图 跑Euroc数据集 更新

近日,一直在调试如何使用Covins跑通数据集,因为是初学者,所以很多bug出来的时候原理都不懂,只能复制——百度——尝试解决的过程。 现分享一下近日的结果以及与Covins作者帮助解答的一些问题。 使用代码行跑依次跑Euroc多数据集 这里的意思是使用作者提供的covins_examples文件夹中的euroc_examples_mh123_vigba.sh文件,这个文件是将三个Euroc数据集依次运行,跑完第一个数据集,第二个数据集运行的时候在第一个数据集生成地图的基础上继续绘制,由于我只下载了两个数据

qq_42614598的博客 2475

STC89C52RC单片机原理图详解

左侧A0和右侧B0为一 一对应的关系,左上角DIR为控制数据方向端口,如果DIR接高电平是将左侧数据A0~A8送到右侧B0~B8,如果DIR接低电平,是将右侧数据B0~B8送到左侧A0~A8,由于在电路板上LE始终与VCC连接,因此这里。74HC595是串行输入,并行输出的移位寄存器,可用3根线输入串行数据,8根线输出并行数据,多片级联后,可输出16位、24位、32位等,常用于I/O口扩展。由于数码管为共阴极,给数码管下面接口输入阳码时,LED才亮,但是直接将P0~P7的高电平输入到数码管时,

m0_50562428的博客 6万+

一键提取图片主色调:ImageGallery Palette 6种取色类型深度实战

**ImageGallery** 是一个安卓图片画廊库:传入一组图片链接,就能得到三列缩略图画廊 + 全屏缩放浏览,并支持**一键提取图片主色调**——它内置安卓 support 库的 Palette 取色算法,自动提取图片主色(如极光图里的玫红色)作为全屏浏览的背景色,并提供 **6 种 Palette 取色类型**可切换,让界面配色与图片自动“同频”,无需手动调色 🎨 [![ImageGa

gitblog_00965的博客 446

锂电池寿命预测 | Pytorch实现基于Transformer 的锂电池寿命预测(NASA数据集)

锂电池寿命预测 | Pytorch实现基于Transformer 的锂电池寿命预测(NASA数据集)

算法如诗的博客 5589

java argox_GitHub - margox/braft-extensions at dev_table

Braft Editor扩展模块包目前包含的模块列表表格模块 Table代码高亮模块 CodeHighlighter高级取色器模块 ColorPicker表情包扩展模块 Emoticon输入字数限制模块 MaxLength标题区块(h1-h6)id模块 HeaderId安装npm install braft-extensions --save# 或者yarn add braft-extension...

weixin_39705850的博客 513

YOLOv13改进策略【注意力机制篇】| ICASSP 2023 EMA 高效多尺度注意力,跨空间学习提高远距离建模依赖

ICASSP 2023 EMA 高效多尺度注意力在 YOLOv13 的接入实战:跨空间学习提升远距离依赖建模,含原理图解、完整代码、yaml 配置与实测参数量对比(ultralytics 8.3.63)。

qq_53329130的博客 935

从零开始创建Davinci Configurator配置工程

本文介绍了从零开始搭建达芬奇工程的详细步骤。首先安装Vector的CBD包后,通过DavicCFG.exe新建空白ECU工程。文章提到Postbuild相关概念可参考往期文章《AUTOSAR配置中的PostBuild、Precompile、Linktime》,并预告下期将讲解如何通过导入DBC文件来启用AUTOSAR模块。全文以实操截图为主,步骤清晰简明,适合开发者参考备份。

Xiaowestwind的博客 222

java鼠标钩子的运用

去年寒假回家闲着无事,就在家中敲敲代码。主要是用java语言写一些小的运用:放大镜,屏幕截图 简单画图工具、取色器什么的,,最后整合成一个小型的软件。不过在这个过程中,发现java中实现屏幕 截图、取色的时候对于鼠标的操作还是显得有些不够,上面的功能一般是事先得到整个屏幕,之后再 在该图片上操作。这使得界面软件必须处于激活状态,很不方便。       其实,采用上面的那种操作实现功能也并不

LCore的专栏 3343

7.26华为OD机试真题 新系统 - 炸弹人的雷区数量 (Java/Py/C/C++/Js/Go)

7.26华为OD机试真题 新系统 - 炸弹人的雷区数量 (Java/Py/C/C++/Js/Go)

算法大师! 794
上一篇: EJB入门文章(Word格式)
下一篇: 在JavaBean 中实现数据库操作的一点个人见解
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值