ツールバーの子メニューを選択状態のとき、
ポップアップメニューをその横に表示させたいのですが、
TPointの求め方が分かりません。
Mouse.CursorPos。詳しくはヘルプを
ツールバーの子メニューって
style:=tbsDropDownの事ですよね?
popup menuを表示させたいだけなら、
DropdownMenuに適当なTpopupMenuを割り当てるだけでいけます。
真横(右)なら
procedure TForm1.ToolButton1Click(Sender: TObject);
var pos:TPoint;
begin
pos:=ToolButton1.ClientToScreen(Point(0,0));
PopupMenu1.Popup(pos.X+ToolButton1.Width,pos.Y);
end;
お二方、回答ありがとうございます。
たかちみえさん、TMouseのCursorPosでなんとなくできましたが、
サブメニュー(子メニューって間違えて書きました。しかもツールバーじゃなく、TMenu)の真横に表示させたいです。
この場合、Widthが無い(というか取得の仕方が分からない)ので変な位置にポップアップしてしまいます。
メラトニンさん、上に書いたとおりToolBarではなくTMenuなのです。
提示されたものは、将来活用させていただきます。
ツイート | ![]() |