螢幕顏色拾取器

2021-10-02 02:31:31 字數 2405 閱讀 8087

遇到乙個好看的背景顏色,想知道它的rgb值,這時就需要螢幕顏色拾取器了。如下,用滑鼠左鍵點中+字,拖曳到要拾取的顏色位置,鬆開左鍵就得該位置的rgb值了。

該工程的qt原始碼和exe工具鏈結

使用qt5.4.1編寫螢幕拾取器的**如下:

//1) 標頭檔案 mycolor.h

#pragma once

#include

#include

"ui_mycolor.h"

class

qgridlayout

;class

qvboxlayout

;class

qlabel

;class

qlineedit

;#if (qt_version < qt_version_check(5,7,0))

#include

#else

#include

#endif

class

mycolor

:public qwidget

;

//2) 原始檔 mycolor.cpp

#pragma execution_character_set("utf-8")

#include

"mycolor.h"

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

#include

mycolor *mycolor::instance =0;

mycolor *mycolor::

instance()

}return instance;

}mycolor::

mycolor

(qwidget *parent)

:qwidget

(parent)

void mycolor::

mousepressevent

(qmouseevent *e)

}void mycolor::

mousereleaseevent

(qmouseevent *e)

void mycolor::

showcolorvalue()

int x = qcursor::

pos().

x();

int y = qcursor::

pos().

y();

txtpoint-

>

settext(tr

("x:%1 y:%2").

arg(x)

.arg

(y))

; qstring strdecimalvalue, strhex, strtextcolor;

int red, green, blue;

#if (qt_version <= qt_version_check(5,0,0))

qpixmap pixmap = qpixmap::

grabwindow

desktop()

->

winid()

, x, y,2,

2);#else

primaryscreen()

; qpixmap pixmap = screen-

>

grabwindow

desktop()

->

winid()

, x, y,2,

2);#endif

if(!pixmap.

isnull()

)}}if

(red >

200&& green >

200&& blue >

200)

else

qstring str =tr(

"background-color: rgb(%1);color: rgb(%2)").

arg(strdecimalvalue)

.arg

(strtextcolor)

; labcolor-

>

setstylesheet

(str)

; txtrgb-

>

settext

(strdecimalvalue)

; txtweb-

>

settext

(strhex)

;}

螢幕任意點顏色拾取

發現很多軟體顏色都很養眼,卻不知具體的顏色值是多少,好參考一下。於是想做個螢幕取色的東西。不過這個東西純粹是為了技術目的,用qq就可以搞到這個顏色值,就連畫筆都可以,只不過複雜些罷了。先把效果放上來。如圖1。圖1 color picker 很土啊 做這個東西只要解決如下的兩個問題 1.全域性滑鼠鉤子...

用VC 開發乙個螢幕顏色拾取器

一 用到的關鍵api及說明 1 函式功能 該函式檢索指定座標點的畫素的rgb顏色值。函式原型 colorref getpixel hdc hdc,int nxpos,int nypos 2 函式功能 捕捉滑鼠訊息 函式原型 hwnd setcapture hwnd hwnd hwnd 當前執行緒裡要...

qt 獲取螢幕控制代碼 Qt開源作品23 顏色拾取器

在做很多專案的ui介面的時候,相信絕大部分人都有過抄襲別人的ui介面尤其是顏色的時候,畢竟十個程式設計師九個沒有審美,或者說審美跟一坨屎一樣,大家主要的精力以及擅長點都是在寫功能實現具體功能上面,這個事情怎麼說呢,這確實是程式設計師的主要職責,但是在大部分的小公司,ui也都是需要程式設計師自己去搞定...