AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Klick in Programmbereich Simulieren

Klick in Programmbereich Simulieren

Ein Thema von jacky213 · begonnen am 26. Feb 2020 · letzter Beitrag vom 1. Mär 2020
Antwort Antwort
jacky213

Registriert seit: 2. Mär 2011
146 Beiträge
 
#1

AW: Klick in Programmbereich Simulieren

  Alt 27. Feb 2020, 22:33
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;
  Mit Zitat antworten Zitat
Alt 28. Feb 2020, 00:26     Erstellt von Frühlingsrolle
Dieser Beitrag wurde von Daniel gelöscht. - Grund: Verdacht auf SPAM und den damit verbundenen verschwenderischen Umgang von wertvollen Bits und Bytes
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.358 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Klick in Programmbereich Simulieren

  Alt 28. Feb 2020, 08:34
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.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
jacky213

Registriert seit: 2. Mär 2011
146 Beiträge
 
#4

AW: Klick in Programmbereich Simulieren

  Alt 28. Feb 2020, 08:39
Die Koordinaten stimmen, gibt es die Möglichkeit einen richtigen Hardware Maus Klick zu simulierten?
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Klick in Programmbereich Simulieren

  Alt 28. Feb 2020, 08:50
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);
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
jacky213

Registriert seit: 2. Mär 2011
146 Beiträge
 
#6

AW: Klick in Programmbereich Simulieren

  Alt 28. Feb 2020, 11:52
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
  Mit Zitat antworten Zitat
jacky213

Registriert seit: 2. Mär 2011
146 Beiträge
 
#7

AW: Klick in Programmbereich Simulieren

  Alt 28. Feb 2020, 20:11
kann das System zwischen echten Touch auf dem Bildschirm und einem mouse_event via Delphi Tool unterscheiden?
  Mit Zitat antworten Zitat
DualCoreCpu
(Gast)

n/a Beiträge
 
#8

AW: Klick in Programmbereich Simulieren

  Alt 1. Mär 2020, 08:45
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);
Von MOUSEEVENTF_LEFTDOWN und MOUSEEVENTF_LEFTUP habe ich bisher noch gar nichts gehört oder gelesen. WO sind diese Konstanten definiert? Und wie arbeiten die mouse_event() funktionen. Oder gibt es die irgendwo schon?

@Frühlingsrolle: Super! Danke auch von mir! So etwas suche ich auch gerade.

Geändert von DualCoreCpu ( 1. Mär 2020 um 09:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.543 Beiträge
 
Delphi 12 Athens
 
#9

AW: Klick in Programmbereich Simulieren

  Alt 1. Mär 2020, 10:55
Dort, wo alle WindowsAPIs zu finden sind.
https://docs.microsoft.com/en-us/win...er-mouse_event

Zuerst in der Windows.pas suchen und wenn nicht, dann kann man noch im $(BDS)-Pfad suchen oder nimmt eine Header-Konvertion von jemand anderem oder kopiert es sich selbst aus der Dokumentation.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 12:01 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