Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Klick in Programmbereich Simulieren (https://www.delphipraxis.net/203532-klick-programmbereich-simulieren.html)

jacky213 27. Feb 2020 20:37

AW: Klick in Programmbereich Simulieren
 
Es ist ein Waren wirtschafts Programm. Es ist nicht von mir. Es hat ein Tastenfeld inwelchem man die EAN eingeben kann um nach Kommissionierten Artikeln zu suchen. Anstatt nun jede Nummer einzeln einzugeben, wollte ich eine Liste abarbeiten lassen und immer wenn ich auf weiter klicke sollte die nächste Nummer eingegeben und gesucht werden.

Zur Zeit bekomme ich nur das Handle der hauptform und jeder Button welcher sich auf der Form selbst befindet wird mir als TButton angezeigt, ich bekomme einfach kein eindeutiges Handle. Nur die ControlID ist bei jedem Button anders.

jacky213 27. Feb 2020 22:33

AW: Klick in Programmbereich Simulieren
 
Es muss nicht zwingend im Hintergrund sein wenn es hilft. Ich habe jetzt mittels Coursor Positionierung und dem Code geschafft das sich was tut, allerdings reagieren einige Buttons trotzdem nicht auf den Klick, wenn ich aber mit der Maus dorthin Klicke dann funktioniert es. Keine Ahnung woran es liegt.

Delphi-Quellcode:
Procedure ClickNow;
var
eu: array [0..1] of TInput;
begin
  SetCursorPos(strtoint(form2.ListView1.Selected.SubItems[0]),
               strtoint(form2.ListView1.Selected.SubItems[1]));
  ZeroMemory(@eu,sizeof(eu));
  eu[0].Itype := INPUT_MOUSE;
  eu[0].mi.dwFlags :=MOUSEEVENTF_LEFTDOWN;
  eu[1].Itype := INPUT_MOUSE;
  eu[1].mi.dwFlags :=MOUSEEVENTF_LEFTUP;
  SendInput(2,eu[0],sizeof(TInput));
end;

stahli 28. Feb 2020 08:34

AW: Klick in Programmbereich Simulieren
 
Ich habe mal vor vielen Jahren etwas ähnliches gemacht und an eine Anwendung "Tastatur-Ereignisse" geschickt. Hoch, Runter, Tabs und Buchstaben.
Funktioniert hatte das bedingt, aber konkret helfen kann ich Dir leider hier nicht.

jacky213 28. Feb 2020 08:39

AW: Klick in Programmbereich Simulieren
 
Die Koordinaten stimmen, gibt es die Möglichkeit einen richtigen Hardware Maus Klick zu simulierten?

KodeZwerg 28. Feb 2020 08:50

AW: Klick in Programmbereich Simulieren
 
oldschool methode von www.swissdelphicenter.ch

Delphi-Quellcode:
// Set the mouse cursor to position x,y:
// Maus an Position x,y setzen:
SetCursorPos(x, y);

// Simulate the left mouse button down
// Linke Maustaste simulieren
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);

// Simulate the right mouse button down
// Rechte Maustaste simulieren
mouse_event(MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0);

// Simulate a double click
// Einen Doppelklick simulieren
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
GetDoubleClickTime;
mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);

// Simulate a double click on a panel
// Einen Doppelklick auf einen Panel simulieren
SendMessage(Panel1.Handle, WM_LBUTTONDBLCLK, 10, 10);

jacky213 28. Feb 2020 11:52

AW: Klick in Programmbereich Simulieren
 
Ich habe jetzt mal eine Maus an den Rechner angeschlossen weil mich der Touch einfach mal total nervt und als ich damit am arbeiten war wurden selbst echte klicks mit der Maus teilweise nicht mehr angenommen?!?

Aber wirklich nur auf manchen Tasten des Nummernblocks auf dem Display, Touch funktionierte bis jetzt ohne jemals Probleme gemacht zu haben.

Sehr komisch

jacky213 28. Feb 2020 20:11

AW: Klick in Programmbereich Simulieren
 
kann das System zwischen echten Touch auf dem Bildschirm und einem mouse_event via Delphi Tool unterscheiden?

Luckie 28. Feb 2020 20:16

AW: Klick in Programmbereich Simulieren
 
Zitat:

Zitat von jacky213 (Beitrag 1458628)
kann das System zwischen echten Touch auf dem Bildschirm und einem mouse_event via Delphi Tool unterscheiden?

Ich frage noch mal.

jacky213 29. Feb 2020 03:01

AW: Klick in Programmbereich Simulieren
 
Was das Programm macht hab ich schon beschrieben falls du das meinst.

jacky213 29. Feb 2020 10:51

AW: Klick in Programmbereich Simulieren
 
Das ist ein guter Ansatz! Vielen Dank Frühlingsrolle


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:49 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz