Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.09.2009, 15:33   #1
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию Как полуить цвет пикселя на экране?

Вот нашёл функцию скриншота:
Код:
Procedure ScreenShot(Path: String);
Var
  Bmp : TBitmap;
  //JpgImg: TJPEGImage;
  DC : HDC;
Begin
  Bmp := Tbitmap.Create;
  //JpgImg := TJPEGImage.Create;
  Bmp.Height := Screen.Height;
  Bmp.Width := Screen.Width;
  DC := GetDC(0);
  Bitblt(Bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height, DC, 0, 0, SRCCOPY);
  ReleaseDC(0, DC);
  bmp.SaveToFile(Path);
//JpgImg.Assign(bmp); //в JPG грузим Битмап
//JpgImg.CompressionQuality := Compres; //устанавливаем компрессию (качество) (1-100)
//JpgImg.SaveToFile(PathJPG); //сохраняем в формате JPG
//Очищаем память.
//JpgImg.Free;
  Bmp.Free;
End;
Как узнать цвет какого-нибуть пикселя, не сохраняя сам скрин?
Или хотя бы не грузя его в TImage?
TwiX вне форума Ответить с цитированием
Старый 13.09.2009, 15:38   #2
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

http://www.programmersforum.ru/showthread.php?t=59323 ТУТ
Сам спрашивал то же самое - получил ответ.
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ

Последний раз редактировалось Alex Cones; 13.09.2009 в 16:02.
Alex Cones вне форума Ответить с цитированием
Старый 13.09.2009, 17:21   #3
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

плохо ищем господа http://programmersforum.ru/showthread.php?t=25705
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 13.09.2009, 22:13   #4
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Может пригодится: > Пипетка как в фотошопе < ...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Старый 13.09.2009, 22:33   #5
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

xD Первым делом я её и создал =)
Код:
unit EyeDropperMain;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Refresh: TTimer;
    Label1: TLabel;
    procedure RefreshTimer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
    procedure getColor();
  end;

var
  Form1: TForm1;
  DC: HDC;
  Pix: Cardinal;

implementation

{$R *.dfm}

procedure TForm1.getColor;
var
  cur:TPoint;
  R,G,B:string;
begin
  Dc:=GetDC(0);
  Windows.GetCursorPos(cur);
  Pix:=GetPixel(Dc, cur.X, cur.Y);
  R:=IntToStr(GetRValue(Pix));
  G:=IntToStr(GetGValue(Pix));
  B:=IntToStr(GetBValue(Pix));
  while length(R)<>3 do R:=R+' ';
  while length(G)<>3 do G:=G+' ';
  while length(B)<>3 do B:=B+' ';
  label1.Caption:='RGB: '+IntToStr(GetRValue(Pix))+' '+IntToStr(GetGValue(Pix))+' '+IntToStr(GetBValue(Pix));
  ReleaseDC(0, Dc);
end;

procedure TForm1.RefreshTimer(Sender: TObject);
begin
  getColor;
end;

end.
TwiX вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Два вопроса: Цвет пикселя и управление курсором MaslovArt Win Api 6 22.06.2012 20:34
определить цвет каждого пикселя Dimarik Общие вопросы C/C++ 4 17.08.2009 16:21
Узнать цвет пикселя на экране, без снимка экрана. Alex Cones Общие вопросы Delphi 3 03.08.2009 12:02
схватить цвет пикселя, когда окно перекрыто или свёрнуто Василий Win Api 7 25.01.2009 22:29
Быстро получить цвет пикселя... prizrak1390 Мультимедиа в Delphi 4 09.01.2008 20:28