Gut.
Dann schlage ich folgendes Code-Schnipsel vor:
Delphi-Quellcode:
procedure ProcessSomeMessages;
var sMessage: string;
mess: TMSG;
Handled: boolean;
begin
sMessage := '';
while PeekMessage(mess, 0, 0, 0, Pm_Remove) do
begin
TranslateMessage(mess);
case mess.message of
WM_KEYDOWN: sMessage := sMessage + 'killed WM_KEYDOWN ';
WM_KEYUP: sMessage := sMessage + 'killed WM_KEYUP ';
WM_MOUSEMOVE: sMessage := sMessage + 'killed WM_MOUSEMOVE ';
WM_LBUTTONDOWN: sMessage := sMessage + 'killed WM_LBUTTONDOWN ';
WM_LBUTTONUP: sMessage := sMessage + 'killed WM_LBUTTONUP ';
WM_RBUTTONDOWN: sMessage := sMessage + 'killed WM_RBUTTONDOWN ';
WM_RBUTTONUP: sMessage := sMessage + 'killed WM_RBUTTONUP ';
WM_MBUTTONDBLCLK: sMessage := sMessage + 'killed WM_MBUTTONDBLCLK ';
WM_RBUTTONDBLCLK: sMessage := sMessage + 'killed WM_RBUTTONDBLCLK ';
WM_LBUTTONDBLCLK: sMessage := sMessage + 'killed WM_LBUTTONDBLCLK ';
WM_NCLBUTTONDOWN: sMessage := sMessage + 'killed WM_NCLBUTTONDOWN ';
WM_TIMER: sMessage := sMessage + 'killed WM_TIMER ';
else
Handled := false;
if Assigned(Application.OnMessage) then
Application.OnMessage(mess, Handled);
if not Handled then
DispatchMessage(mess);
end;
end;
end;
weil tb_Load_ElementsClick mehrfach auszuführen weil irgendwer wie wild auf den Button drückt ist denke ich auch nicht das was er will...