Помощь - Поиск - Пользователи - Календарь
Полная версия: Взятие цвета с экрана
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Делфи
Bokul
Надо бы програмка, которая возвращает цвет заданного пикселя экрана, желательно в RGB и кодом.
volvo
Тебе что, готовая нужна? Сам написать не хочешь? rolleyes.gif

Всего делов:
function DesktopColor(const X, Y: Integer): TColor;
var
c: TCanvas;
begin
c := TCanvas.Create;
try
c.Handle := GetWindowDC(GetDesktopWindow);
Result := GetPixel(c.Handle, X, Y);
finally
c.Free;
end;
end;

...
GetCursorPos(Pos);
myColor := DesktopColor(Pos.X, Pos.Y);
...
Bokul
Цитата
Сам написать не хочешь?

Сам напросился... smile.gif

Это Delphi?
volvo
Дельфи, кто ж еще?

Перенести тему?
Bokul
Цитата
Перенести тему?

Еееее, давай.

Цитата
Дельфи, кто ж еще?

А вдруг в Fpc появился TCanvas... Можешь файл проекта присоединить?
volvo
Цитата
Можешь файл проекта присоединить?
Вот:
Bokul
Спасибо!
Есть два вопросы:
1 Где можно посмотреть что делает, например, функция GetRValue? По контексту и так ясно, но во встроенной справке я не нашел. Другими словами как ее (систему помощи) использовать?
2 Как перевести TColor в #FFFFFF формат?
Caranthir
сдесь DRKB -реальная вещь wink.gif
TarasBer
Цитата(Bokul @ 18.03.2007 18:29) *

2 Как перевести TColor в #FFFFFF формат?

Ну, по-моему, TColor в integer переводится ретипизацией...
А выписать integer в шестнадцатиричной системе счисления трудностей нету.
klem4
Цитата
Как перевести TColor в #FFFFFF формат?


Либо руками, либо

Недавно сам это искал, хотя может это не совсем то что тебе нужно, ибо в некоторых случаях возвращает значения не в виде строки в формате hex
Цитата(дркб)
В модуле graphics имеются две недокументированные функции:



function ColorToString(Color: TColor): string;



Если значение TColor является именованным цветом, функция возвращает имя цвета ("clRed"). В противном случае возвращается шестнадцатиричное значение цвета в виде строки.



function StringToColor(S: string): TColor;



Данная функция преобразует "clRed" или "$0000FF" во внутреннее значение цвета.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.