ContextMenu Bileşeni — sgcHTML | eSeGeCe

ContextMenu

TsgcHTMLComponent_ContextMenu — Delphi, C++ Builder ve .NET'te bir CSS seçiciyle kapsamlanan, simgeler, ayraçlar, başlıklar ve sunucuya yönlendirilen eylemler içeren bir sağ tık Bootstrap açılır menüsü işleyin.

TsgcHTMLComponent_ContextMenu

Items'e girdiler ekleyin, sağ tıklamaları TargetSelector ile kapsamlayın, ardından HTML özelliğini okuyun; bir sağ tık menüyü konumlandırır ve açar.

Bileşen sınıfı

TsgcHTMLComponent_ContextMenu

İşler

Bootstrap 5 dropdown-menu <ul> + bağlama betiği

Diller

Delphi, C++ Builder, .NET

Girdiler ekleyin, hedefi kapsamlayın, işleyin

Her girdi için Items.Add'ı çağırın ve Caption/Icon/DataAction'ını (ya da Href'ini) ayarlayın, sağ tıklamaları TargetSelector ile kısıtlayın, ardından HTML'i okuyun.

uses
  sgcHTML_Component_ContextMenu;

var
  oMenu: TsgcHTMLComponent_ContextMenu;
  oItem: TsgcHTMLContextMenuItem;
begin
  oMenu := TsgcHTMLComponent_ContextMenu.Create(nil);
  try
    oMenu.MenuID := 'grid_menu';
    oMenu.TargetSelector := '.grid-row';

    oItem := oMenu.Items.Add;
    oItem.Caption := 'Edit';
    oItem.Icon := 'bi bi-pencil';
    oItem.DataAction := 'row:edit';

    oItem := oMenu.Items.Add;
    oItem.Caption := 'Delete';
    oItem.Icon := 'bi bi-trash';
    oItem.DataAction := 'row:delete';

    oItem := oMenu.Items.Add;
    oItem.Divider := True;

    oItem := oMenu.Items.Add;
    oItem.Caption := 'Open in new tab';
    oItem.Href := '/grid/open';

    WebModule.Response := oMenu.HTML;   // hidden <ul> + right-click binding script
  finally
    oMenu.Free;
  end;
end;
// includes: sgcHTML_Component_ContextMenu.hpp

TsgcHTMLComponent_ContextMenu *oMenu = new TsgcHTMLComponent_ContextMenu(NULL);
try
{
  oMenu->MenuID = "grid_menu";
  oMenu->TargetSelector = ".grid-row";

  TsgcHTMLContextMenuItem *oItem = oMenu->Items->Add();
  oItem->Caption = "Edit";
  oItem->Icon = "bi bi-pencil";
  oItem->DataAction = "row:edit";

  oItem = oMenu->Items->Add();
  oItem->Caption = "Delete";
  oItem->Icon = "bi bi-trash";
  oItem->DataAction = "row:delete";

  oItem = oMenu->Items->Add();
  oItem->Divider = true;

  String html = oMenu->HTML;   // hidden <ul> + right-click binding script
}
__finally
{
  delete oMenu;
}
using esegece.sgcWebSockets;

var menu = new TsgcHTMLComponent_ContextMenu();
menu.MenuID = "grid_menu";
menu.TargetSelector = ".grid-row";

var item = menu.Items.Add();
item.Caption = "Edit";
item.Icon = "bi bi-pencil";
item.DataAction = "row:edit";

item = menu.Items.Add();
item.Caption = "Delete";
item.Icon = "bi bi-trash";
item.DataAction = "row:delete";

item = menu.Items.Add();
item.Divider = true;

string html = menu.HTML;   // hidden <ul> + right-click binding script

Temel özellikler & yöntemler

En sık başvurduğunuz üyeler.

Items

Items, her biri Caption, Icon, Href, DataAction, Divider, Header ve Disabled içeren bir TsgcHTMLContextMenuItem olan girdileri tutar.

Items.Add

Items.Add, koleksiyona bir girdi ekler ve özelliklerini ayarlayabilmeniz için onu döndürür.

TargetSelector

Sağ tık yakalamasını bu CSS seçiciyle eşleşen öğelerle sınırlar; boş bırakılırsa, sayfadaki her sağ tık menüyü açar.

DataAction

Bir DataAction içeren bir girdiye tıklamak, onu window.sgcHTMX.send üzerinden gönderir (formların kullandığı aynı kanal) ve bir sgcContextMenu:action DOM olayı tetikler.

Divider & Header

Divider, bir ayraç çizgisi işler; Header, bir bağlantı yerine tıklanamaz bir bölüm başlığı işler.

Menünün öğe kimliğini açıkça ayarlar; boş bırakılırsa, benzersiz bir kimlik otomatik olarak üretilir ve önbelleğe alınır.

Keşfetmeye devam edin

Çevrimiçi yardımBu bileşen için tam API referansı ve kullanım kılavuzu.
Tüm sgcHTML Bileşenleri80'den fazla bileşenin tam özellik matrisine göz atın.
Ücretsiz Deneme Sürümünü İndirin30 günlük deneme, 60.HTML demo projeleriyle birlikte gelir.
FiyatlandırmaTam kaynak kodlu Single, Team ve Site lisansları.

Başlamaya Hazır mısınız?

Ücretsiz deneme sürümünü indirin ve Delphi, C++ Builder ve .NET'te web arayüzleri oluşturmaya başlayın.