AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Macro-Mausclick

Ein Thema von InZiDeR · begonnen am 21. Sep 2007 · letzter Beitrag vom 21. Sep 2007
 
InZiDeR

Registriert seit: 2. Mai 2007
48 Beiträge
 
#4

Re: Macro-Mausclick

  Alt 21. Sep 2007, 19:36
Keysendung
Delphi-Quellcode:
Procedure PostKeyEx32( key: Word; Const shift: TShiftState;
                    specialkey: Boolean );
  Type
    TShiftKeyInfo = Record
                      shift: Byte;
                      vkey : Byte;
                    End;
    byteset = Set of 0..7;
  Const
    shiftkeys: Array [1..3] of TShiftKeyInfo =
      ((shift: Ord(ssCtrl); vkey: VK_CONTROL ),
      (shift: Ord(ssShift); vkey: VK_SHIFT ),
      (shift: Ord(ssAlt); vkey: VK_MENU ));
  Var
    flag: DWORD;
    bShift: ByteSet absolute shift;
    i: Integer;
  Begin
    For i := 1 To 3 Do Begin
      If shiftkeys[i].shift In bShift Then
        keybd_event( shiftkeys[i].vkey,
                    MapVirtualKey(shiftkeys[i].vkey, 0),
                    0, 0);
    End; { For }
    If specialkey Then
      flag := KEYEVENTF_EXTENDEDKEY
    Else
      flag := 0;

    keybd_event( key, MapvirtualKey( key, 0 ), flag, 0 );
    flag := flag or KEYEVENTF_KEYUP;
    keybd_event( key, MapvirtualKey( key, 0 ), flag, 0 );

    For i := 3 DownTo 1 Do Begin
      If shiftkeys[i].shift In bShift Then
        keybd_event( shiftkeys[i].vkey,
                    MapVirtualKey(shiftkeys[i].vkey, 0),
                    KEYEVENTF_KEYUP, 0);
    End; { For }
  End; { PostKeyEx32 }
Mausklick(bewegung?):
Delphi-Quellcode:
procedure MoveMouse (X,Y,Speed: Integer);
var
  wd, hh : integer;
  mm : TPoint;
begin
if Speed < 1 then Speed := 1;
wd := X;
hh := Y;

Repeat
   sleep(speed);
   Application.Processmessages;
   GetCursorPos(mm);
   with mm do
   begin
     If x > wd then
      dec(x)
     else
     If x < wd then
      inc(x);
     If y > hh then
      dec(y)
     else
     If y < hh then
      inc(y);
   end;
   SetCursorPos(mm.x,mm.y);
until (GetAsyncKeystate(Vk_Return) <> 0) or
       (GetAsyncKeystate(Vk_Escape) <> 0) or
       (GetAsyncKeystate(Vk_Space ) <> 0) or
       ((mm.X=X) and (mm.Y=Y));
end;

Bitteschön
Ich bin Anfänger in sachen Programmieren,aber ich steiger mich und steiger mich

Jeder der mir Hilfe anbieten kann soll dies tun ,ich wäre ihm sehr dankbar.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz