AGB  ·  Datenschutz  ·  Impressum  







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

Mousemove schlägt bei Opendialog durch

Ein Thema von skoschke · begonnen am 26. Jun 2019 · letzter Beitrag vom 27. Jun 2019
Antwort Antwort
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
724 Beiträge
 
Delphi 12 Athens
 
#1

AW: Mousemove schlägt bei Opendialog durch

  Alt 26. Jun 2019, 14:32
Delphi-Quellcode:
{!
<summary>
Remove all mouse messages from the calling thread's message queue.</summary>
}

procedure EmptyMouseQueue;
var
  Msg: TMsg;
begin
  while PeekMessage(Msg, 0, WM_MOUSEFIRST, WM_MOUSELAST,
    PM_REMOVE or PM_NOYIELD) do
    ;
end;
Peter Below
  Mit Zitat antworten Zitat
skoschke

Registriert seit: 6. Jan 2009
523 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Mousemove schlägt bei Opendialog durch

  Alt 27. Jun 2019, 06:14
Zitat:
Vor "OpenDialog":
OnMouseMove := nil;

Nach "OpenDialog":
OnMouseMove := FormMouseMove;
wirkt leider genau so wenig wie mein enabled...

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von newIndy
newIndy

Registriert seit: 18. Dez 2018
29 Beiträge
 
Delphi XE3 Professional
 
#3

AW: Mousemove schlägt bei Opendialog durch

  Alt 27. Jun 2019, 06:33
'...Auf einem Formular liegt ein TImage welches per Mousemove Zeichenoperationen ausführt...'

Wie sieht deine Methode zum Zeichnen aus?
  Mit Zitat antworten Zitat
skoschke

Registriert seit: 6. Jan 2009
523 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Mousemove schlägt bei Opendialog durch

  Alt 27. Jun 2019, 06:16
Delphi-Quellcode:
{!
<summary>
Remove all mouse messages from the calling thread's message queue.</summary>
}

procedure EmptyMouseQueue;
var
  Msg: TMsg;
begin
  while PeekMessage(Msg, 0, WM_MOUSEFIRST, WM_MOUSELAST,
    PM_REMOVE or PM_NOYIELD) do
    ;
end;
Wann soll das aufgerufen werden?
Nach dem Opendialog.execute bringt es keinen Effekt!

Ciao
Stefan
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
724 Beiträge
 
Delphi 12 Athens
 
#5

AW: Mousemove schlägt bei Opendialog durch

  Alt 27. Jun 2019, 10:27
Delphi-Quellcode:
{!
<summary>
Remove all mouse messages from the calling thread's message queue.</summary>
}

procedure EmptyMouseQueue;
var
  Msg: TMsg;
begin
  while PeekMessage(Msg, 0, WM_MOUSEFIRST, WM_MOUSELAST,
    PM_REMOVE or PM_NOYIELD) do
    ;
end;
Wann soll das aufgerufen werden?
Nach dem Opendialog.execute bringt es keinen Effekt!
Dann ist deine Diagnose nicht korrekt, oder deine Zeichenroutine prüft nicht, ob der Mausknopf eigentlich gedrückt ist oder nicht und zeichnet daher auch, wenn das nicht der Fall ist. Wenn Du EmptyMouseQueue aufgerufen hast kann das Problem nur von mouse messages stammen, die danach erzeugt werden.
Peter Below
  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 06:34 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