Skip to main content
Table of Contents

Getting started with TMS FNC Popup Menu

Prerequisites

  • TMS FNC Core installed and the runtime package added to the project.

Add the component

  1. Drop TTMSFNCPopupMenu from the TMS FNC UI palette page onto a form.
  2. Add items at design time via the Items collection editor, or in code:
Add the componentPascalC++
var
  Item: TTMSFNCMenuItem;
begin
  Item := PopupMenu1.Items.Add;
  Item.Text := 'Copy';
  Item.OnClick := HandleCopy;

  Item := PopupMenu1.Items.Add;
  Item.ItemType := mitSeparator;

  Item := PopupMenu1.Items.Add;
  Item.Text := 'Paste';
  Item.OnClick := HandlePaste;
end;
TTMSFNCMenuItem *Item = PopupMenu1->Items->Add();
Item->Text = "Copy";
Item->OnClick = HandleCopy;

Item = PopupMenu1->Items->Add();
Item->ItemType = TTMSFNCMenuItemType::mitSeparator;

Item = PopupMenu1->Items->Add();
Item->Text = "Paste";
Item->OnClick = HandlePaste;

Show the menu

Show the menuPascalC++
procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Single);
begin
  if Button = TMouseButton.mbRight then
    PopupMenu1.Popup(X, Y);
end;
void __fastcall TForm1::Panel1MouseUp(TObject *Sender, TMouseButton Button,
  TShiftState Shift, float X, float Y)
{
  if (Button == TMouseButton::mbRight)
    PopupMenu1->Popup(X, Y);
}

Handle item click

Handle item clickPascalC++
procedure TForm1.HandleCopy(Sender: TObject);
begin
  // copy logic
end;
void __fastcall TForm1::HandleCopy(TObject *Sender)
{
  // copy logic
}

Next steps

  • Guides — sub-menus, embedded controls, appearance, and keyboard navigation.
  • API reference — full class reference.