スレッドでの処理ですが,修正したplExplorerFolderTree.pasであれば,
procedure TplExplorerFolderTreeThread.MessageLoop;
var
Amsg : Msg;
begin
while True do begin
if GetMessage(AMsg, 0, 0, 0) = False then begin
PostQuitMessage(0);
break;
end;
if Amsg.message = WM_MOUSEMOVE then begin
//処理
end else begin
TranslateMessage(Amsg);
DispatchMessage(Amsg);
end;
end;
end;
こんな感じですね.
TranslateMessage(Amsg);
DispatchMessage(Amsg);
はキー操作関係の場合は,実行しないと,表示も正常に行われないし,
Itemの名前変更もできなくなります.
マウスメッセージの場合は,この2行は実行する必要は特にありません.
|