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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.07.2014, 06:45   #1
Nastya1998
Пользователь
 
Регистрация: 22.07.2014
Сообщений: 19
По умолчанию Кликер на Delphi

Привет всем, мне нужен код/исходник кликера на Delphi, все очень просто, ставим мышку в любое место нажимаем на клавишу Ctrl и программа кликает по тому месту, на которое мы навели курсор, но нужно что-бы кликала программка именно в то место, в которое поставили курсор, и если сдвинешь мышку, то программка вернет курсор на то место, где кликает, и продолжит кликать, для отключения просто нажать Ctrl еще раз.
Nastya1998 вне форума Ответить с цитированием
Старый 23.07.2014, 11:24   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Честно говоря, мало что понял.
Наваял на скорую руку. Курсор бегает, ежели надавить на ctrl, бросает msg о нажатии левого бтн.
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  keypreview:=true;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);

begin
  if ssCtrl  in shift then
    begin
      mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
      Application.ProcessMessages;
      mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
      label1.Caption:='Left button pressed';
    end;


end;

end.
Кажется, не то
У меня просто отслеживается нажатие ctrl (?)
Но сама идея про mouseevent должна быть верной.
Потому что не моя

Последний раз редактировалось ZX Spectrum-128; 23.07.2014 в 12:08.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 25.07.2014, 04:00   #3
Nastya1998
Пользователь
 
Регистрация: 22.07.2014
Сообщений: 19
По умолчанию

Цитата:
Сообщение от ZX Spectrum-128 Посмотреть сообщение
Честно говоря, мало что понял.
Наваял на скорую руку. Курсор бегает, ежели надавить на ctrl, бросает msg о нажатии левого бтн.
Код:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  keypreview:=true;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);

begin
  if ssCtrl  in shift then
    begin
      mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
      Application.ProcessMessages;
      mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
      label1.Caption:='Left button pressed';
    end;


end;

end.
Кажется, не то
У меня просто отслеживается нажатие ctrl (?)
Но сама идея про mouseevent должна быть верной.
Потому что не моя
Мне нужно вот это:
Ставишь курсор в любое место нажимаешь Ctrl и программка кликает только по тому месту на которое ты поставил курсор, а если двинешь мышку то курсор вернется на то место где кликает и продолжит кликать, а если нажать на Ctrl то кликать перестает!
Nastya1998 вне форума Ответить с цитированием
Старый 25.07.2014, 07:13   #4
DIONISKA
Форумчанин
 
Регистрация: 07.11.2011
Сообщений: 161
По умолчанию

Цитата:
Сообщение от Nastya1998
Мне нужно вот это:
Ставишь курсор в любое место нажимаешь Ctrl ...
Вот тебе исходник моего кликера - разбирайся Принцип работы: ставит глобальный хук и ловит нажатие ctrl + правая кнопка мыши, затем шлёт сообщения главному окну, которое уже используя mouseevent имитирует нажатия левой кнопки мыши и следит за координатами указателя мыши.
Вложения
Тип файла: rar Prj.rar (4.8 Кб, 93 просмотров)
DIONISKA вне форума Ответить с цитированием
Старый 25.07.2014, 07:16   #5
mirkul
Пользователь
 
Регистрация: 16.07.2014
Сообщений: 62
Радость

В событии OnKeyDown/OnKeyUp:
Код:
...
if(key=vk_Control) then self.Click;
...
В делфе давно не сидел, помоему вот так, если не ошибаюсь
mirkul вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен кликер Lem Ist Io Фриланс 2 22.02.2012 08:35
кликер Е animevolk Помощь студентам 28 29.05.2011 17:31
Кликер KoLLleu Общие вопросы C/C++ 8 27.12.2010 15:17
Кликер MVC++ jestyan Помощь студентам 0 10.12.2010 14:10
Кликер Federal Помощь студентам 10 06.08.2010 22:52