Показать сообщение отдельно
  #1  
Старый 19.11.2015, 17:41
Sex_1C Sex_1C вне форума
Прохожий
 
Регистрация: 19.11.2015
Сообщения: 4
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Выполнение условия после определения цвета

Здравствуйте дамы и господа. Имеется код
Код:
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;

procedure TForm1.Button1Click(Sender: TObject);
var
  x, y: Integer;
begin
  x := 650;
  y := 476;
  Label1.Caption := IntToStr(DesktopColor(x, y));
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
form1.Timer2.Interval:=1000;
  form1.Timer2.Enabled:=true;
 
end;

procedure TForm1.Timer2Timer(Sender: TObject);
var x,y: word;
begin
if Label1.Caption <> '6684876' then
x := 951 ;
y := 862 ;
SetCursorPos(x, y);
mouse_event(MOUSEEVENTF_LEFTDOWN,0, 0,  0, 0);
mouse_event(MOUSEEVENTF_LEFTUP,0, 0, 0, 0);
end;

Он определяет по нажатии на кнопку цвет в указанных координатах.И записывает его в лэйбел А по нажатию на другую кнопку, запускается таймер который проверяет цвет в лэйбел, и если он не совпал с указанным, то происходит клик в нужном месте. Проблема: после нажатию на эту кнопку, клик всё равно происходит, хоть и цвет в лэйбеле не менялся. В чем проблема?
Ответить с цитированием