AGB  ·  Datenschutz  ·  Impressum  







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

Suche bestimmet Windows-Messages

Ein Thema von Popov · begonnen am 17. Mai 2015 · letzter Beitrag vom 17. Mai 2015
Antwort Antwort
SMO

Registriert seit: 20. Jul 2005
178 Beiträge
 
Delphi XE6 Professional
 
#1

AW: Suche bestimmet Windows-Messages

  Alt 17. Mai 2015, 16:58
- Zuerst suche die Message die versenden wird wenn die Maus über die Titelleiste des Fenster bewegt wird.
WM_MOUSEMOVE
WM_NCHITTEST
WM_MOUSELEAVE
WM_NCMOUSELEAVE

Zitat:
- Dann suche die Message die versenden wird wenn mit der Maus auf die Titelleiste geklickt wird.
WM_NCLBUTTONDOWN (in Verbindung mit WM_NCHITTEST)

Zitat:
- Besonders suche die Message die versenden wird wenn die Maus über die System-Buttons (Minimieren, usw.)des Fenster bewegt wird.

- Falls es die gibt, suche die Message die versenden wird wenn mit der Maus auf die die System-Buttons geklickt wird.
WM_SYSCOMMAND


Oder einfach selbst untersuchen, welche Nachrichten erzeugt werden:
Delphi-Quellcode:
var
  OldWndProc: function (hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;

function GetWinMsgName(Msg: UINT): string;
begin
  // eine sinnvollere Implementierung, die den Msg-Wert in den WM_xxx Namen übersetzt, überlasse ich dem Leser
  // siehe Winapi.Messages.pas oder http://wiki.winehq.org/List_Of_Windows_Messages
  Result := 'Msg = $' + IntToHex(Msg, 4);
end;

function MyWndProc(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
  Result := OldWndProc(hWnd, Msg, wParam, lParam);
  System.Writeln(Format('WindowProc: $%.8x $%.8x $%.8x %s = %d',
    [hWnd, wParam, lParam, GetWinMsgName(Msg), Result]));
end;

procedure TForm1.FormShow(Sender: TObject);
begin
  AllocConsole;
  SetConsoleOutputCP(CP_UTF8);
  OldWndProc := Pointer(SetWindowLongPtr(Handle, GWL_WNDPROC, IntPtr(@MyWndProc)));
end;
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#2

AW: Suche bestimmet Windows-Messages

  Alt 17. Mai 2015, 17:09
Vielen Dank an Alle, dass ging ja schnell. Die ersten Test sehen gut aus. Werde jetzt etwas experimentieren, sag dann bescheid.
  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 10:06 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