くだすれDelphi(超初心者用)その18
■ このスレッドは過去ログ倉庫に格納されています
004011
NGNGあ、すみません。テストロジックの例がまずかったですね。
1つの場所だけではなく、複数ある内のどれかがポップアップしているのかを
判断したいのです。
procedure TForm1.WndProc(var Msg: TMessage);
begin
case Msg.Msg of
WM_ENTERMENULOOP:Timer1.Enabled := False;
WM_EXITMENULOOP: Timer1.Enabled := True;
//どこかのポップアップメニューを操作中:Timer1.Enabled := False;
//どこかのポップアップメニューの操作を抜けた: Timer1.Enabled := True;
end;
inherited WndProc(Msg);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
//処理を行う。ただしメニュー操作中は無効。
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
PopupMenu1.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
PopupMenu2.Popup(Mouse.CursorPos.X, Mouse.CursorPos.Y);
end;
//その他、色々な場所で何種類かのポップアップメニューを表示
■ このスレッドは過去ログ倉庫に格納されています