AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Mouse position und klick an anderen Rechner Senden
Thema durchsuchen
Ansicht
Themen-Optionen

Mouse position und klick an anderen Rechner Senden

Ein Thema von davtix · begonnen am 23. Sep 2017 · letzter Beitrag vom 23. Sep 2017
Antwort Antwort
davtix

Registriert seit: 29. Mai 2003
Ort: Berlin
87 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

AW: Mouse position und klick an anderen Rechner Senden

  Alt 23. Sep 2017, 13:42
hab schon mal ein wenig geändert


im socket read...

von
Code:
 if (bef = 'MPOS') and ( fup.prpa.procSockReadAktiv = 0 ) then then
zu
Code:
 if (bef = 'MPOS') then
das läuft schon mal sehr flüssig .



von
Code:
 //wenn string länger als 30 zeichen hat dann verwerfen
 if ( length( st4 ) > 30) then EXIT;
....
   //linksklick auslesen
   //tempP := copy( st4  , 1  , p4 -1 );                // hinten weg
   Mlk := strtoint(copy( st4  , p4 + 5  , length( st4 ) )); // vorne weg
zu
Code:
 //wenn string länger als 30 zeichen hat dann kürzen
 if ( length( st4 ) > 30) then st4 := copy( st4 , 1 , 30 );
....
   //linksklick auslesen
   tempP := copy( st4  , 1  ,  p4 + 5 );                 // hinten weg
   Mlk := strtoint(copy( tempP , p4 + 5  , length( tempP ) )); // vorne weg
und den Fehler gefunden warum kein Linksklick ging obwohl er empfangen wurde.
von
Code:
   // linksklick
   if (mRk = 1) and (mLk = 0) then
zu
Code:
  // linksklick
   if (mRk = 0) and (mLk = 1) then
  Mit Zitat antworten Zitat
davtix

Registriert seit: 29. Mai 2003
Ort: Berlin
87 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Mouse position und klick an anderen Rechner Senden

  Alt 23. Sep 2017, 15:41
neu
unter -> procedure TForm1.ServerSocket1ClientRead(Sender: TObject;Socket: TCustomWinSocket);

Code:

//nur maus bewegen
   SetCursorPos(Mx,My);

   if (mRk = 1) and (mLk = 0) then
    begin
     mouse_event(MOUSEEVENTF_RIGHTDOWN, Mx, My, 0, 0);
     mouse_event(MOUSEEVENTF_RIGHTUP, Mx , My, 0, 0);
    end;

   if (mLk = 1) and (fup.prpa.MemmLk = 0) then mouse_event(MOUSEEVENTF_LEFTDOWN, Mx, My, 0, 0);
   if (mLk = 0) and (fup.prpa.MemmLk = 1) then mouse_event(MOUSEEVENTF_LEFTUP, Mx, My, 0, 0);



   //letzten klickzustand speichern
   fup.prpa.MemmLk := mLk;

weiter habe ich geändert in mouse down & mouse move & mouse klick
Code:
var Shift: TShiftState;<-bei button klick

if ( einstF.CheckBox16.Checked = true) then
 begin
  M := einstF.rkGlassButton5.ScreenToClient( mouse.CursorPos );
  if ssRight in Shift then mRk := 1  else mRk := 0;
  if ssLeft in Shift then mLk := 1  else mLk := 0;

  MouseEvents(1, M.X, M.Y , mRk, mLk );
 end;
Jetzt funktionierts flüssig und ziehen/ drag and drop ist ebenso möglich
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:29 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