Technical Support
🟢 Online now
Hello 👋

How can we help you today?
Contact on WhatsApp
B4X Store
jdashboardUI / Menús y navegación / jFloatingMenu
Menús y navegación

jFloatingMenu

Menú contextual flotante con acciones, títulos, separadores y submenús.

Buscar en toda jdashboardUI
Fuente
jdashboardUI.b4xlib · Solo API pública
Idioma de la tienda: es

JDashboardUI · Referencia completa · B4J/JavaFX · Biblioteca del 30 de octubre de 2026

Menú contextual con títulos, separadores, iconos, imágenes, valores asociados, submenús, paneles personalizados, posicionamiento y eventos.

Maqueta visual ilustrativa de jFloatingMenu

Maqueta gráfica ilustrativa, no captura exacta del control.

Para qué sirve y cuándo utilizarlo

Menú contextual con títulos, separadores, iconos, imágenes, valores asociados, submenús, paneles personalizados, posicionamiento y eventos.

Inicialización, uso y ejemplos prácticos

El código siguiente muestra las operaciones disponibles. Cuando se utiliza Root, este representa un B4XView ya creado. Los archivos de imagen ilustrativos deben existir en Files.

' A menu with a heading, icons, separator and an associated value
Private Menu As jFloatingMenu
Menu.Initialize(Me, Root, 20dip, 20dip, 230dip, 220dip)
Menu.AddTitleMenu("Actions", xui.Color_White)
Menu.AddMenuItem("Edit", Chr(0xF044), xui.CreateFontAwesome(18), _
    xui.Color_White, "Edit", xui.Color_White, "Edit record")
Menu.AddSeparator(xui.Color_Gray)
Menu.AddMenuItemWithValue("Remove", Chr(0xF1F8), _
    xui.CreateFontAwesome(18), xui.Color_Red, "Delete", _
    xui.Color_White, "Delete record", 42)
Menu.ShowMenu(xui.Color_RGB(30,35,50), xui.Color_Black)

' Anchor menu to an existing control
Menu.ShowMenuRelativeTo(BtnMore, "BOTTOM_LEFT", _
    xui.Color_RGB(30,35,50), xui.Color_Black)

Private Sub Edit_OptionMenuClicked
    Log("Edit clicked")
End Sub

Private Sub Remove_OptionMenuClicked2(Value As Object)
    Log("Record: " & Value)
End Sub

' Close when appropriate
Menu.CloseMenu

Referencia completa de los miembros públicos

Este módulo expone 36 métodos / accesores públicos en la versión revisada. A continuación se documentan todas sus firmas, incluyendo las variantes, getters/setters y hooks del Designer.

Firma exacta del código fuente Para qué sirve
Initialize(callback As Object, parent As B4XView, Left As Float, Top As Float, Width As Float, Height As Float) Inicializa la instancia y, si se solicita, vincula Callback y EventName.
Base As CustomListView Método público; utiliza los parámetros de la firma declarada.
CloseIcon(icon As String, font As Font, color As Int) Configura o ejecuta el cierre.
AddMenuPrimaryTitle1(DirIcon As String, FileIcon As String, title As String, TextColor As Int) Inserta cabecera con imagen.
AddMenuPrimaryTitle2(Icon As String, Font As B4XFont, ColorIcon As Int, Title As String, TextColor As Int) Inserta cabecera con glifo.
AddMenuItem(EventName As String, IconText As String, FontIcon As B4XFont, ColorIcon As Int, MainText As String, ColorText As Int, tooltip As String) Inserta opción con icono y nombre de evento.
AddMenuItem2(EventName As String, DirIcon As String, FileIcon As String, MainText As String, ColorText As Int, tooltip As String) Inserta opción con imagen y nombre de evento.
AddMenuItemWithValue(EventName As String, IconText As String, FontIcon As B4XFont, ColorIcon As Int, MainText As String, ColorText As Int, tooltip As String, Value As Object) Inserta opción con icono y valor asociado devuelto al callback.
AddMenuItem2WithValue(EventName As String, DirIcon As String, FileIcon As String, MainText As String, ColorText As Int, tooltip As String, Value As Object) Inserta opción con imagen y valor asociado.
addpanel(pane As B4XView, showCloseIcon As Boolean) Inserta un panel B4XView en el menú.
ReloadPanel(NewPane As B4XView, showCloseIcon As Boolean) Reemplaza el panel personalizado existente.
panel As B4XView Método público; utiliza los parámetros de la firma declarada.
AddSeparator(color As Int) Agrega separador visual.
AddTitleMenu(MainText As String, color As Int) Agrega título de sección.
ShowMenu(PanelColor As Int, ShadowColor As Int) Abre el menú usando los colores elegidos.
ShowMenuRelativeTo(AnchorView As B4XView, Position As String, PanelColor As Int, ShadowColor As Int) Abre el menú junto a la vista ancla.
ShowMenuImmediateRelativeTo(AnchorView As B4XView, Position As String, PanelColor As Int, ShadowColor As Int) Abre sin transición junto a la vista ancla.
AddSubMenu(EventName As String, IconText As String, FontIcon As B4XFont, ColorIcon As Int, MainText As String, ColorText As Int, SubMenu As jFloatingMenu) Vincula otra instancia de jFloatingMenu como submenú con icono.
AddSubMenu2(EventName As String, DirIcon As String, FileIcon As String, MainText As String, ColorText As Int, SubMenu As jFloatingMenu) Vincula submenú mediante una opción con imagen.
ShowMenuImmediate(PanelColor As Int, ShadowColor As Int) Abre el menú sin animación.
SetPosition(Left As Float, Top As Float) Cambia las coordenadas del menú.
getWidth As Float Lee la propiedad Width.
getHeight As Float Lee la propiedad Height.
CloseMenu Cierra el menú.
setOpenOrientation_None Activa la orientación de apertura indicada en el nombre del método.
setOpen_LeftBottom Activa la orientación de apertura indicada en el nombre del método.
setOpen_RightBottom Activa la orientación de apertura indicada en el nombre del método.
setOpen_LeftTop Activa la orientación de apertura indicada en el nombre del método.
setOpen_RightTop Activa la orientación de apertura indicada en el nombre del método.
setOpen_LeftRight Activa la orientación de apertura indicada en el nombre del método.
setOpen_RightLeft Activa la orientación de apertura indicada en el nombre del método.
setOpen_TopBottom Activa la orientación de apertura indicada en el nombre del método.
setOpen_BottomTop Activa la orientación de apertura indicada en el nombre del método.
setFont(font As B4XFont) Configura Font; con un solo parámetro suele usarse como propiedad B4X.
getFont As B4XFont Lee la propiedad Font.
SetMenuEventName(Name As String) Cambia el prefijo de eventos.

Propiedades B4X: lectura y escritura

Los métodos públicos getX y setX (cuando corresponda) se utilizan mediante la propiedad Control.X. Los métodos con varios parámetros deben utilizarse como métodos.

Propiedad Acceso
Width lectura
Height lectura
Font lectura / escritura

Campos públicos

  • MenuItemscolorSelected As Paint

Propiedades del Designer

No se declaran propiedades propias para el Designer en este módulo.

Eventos

  • <EventName>_OptionMenuClicked
  • <EventName>_OptionMenuClicked2(Value As Object)

Ciclo de vida, compatibilidad y límites

Para submenús crea e inicializa una segunda instancia de jFloatingMenu. El EventName pasado a cada opción determina su callback; existen variantes que entregan Value.

DesignerCreateView y Base_Resize, cuando aparezcan en la referencia pública, son hooks administrados por el sistema de Custom Views; normalmente no se llaman manualmente. Si colocas el control desde el Designer, no vuelvas a inicializar la misma instancia.

Icon Choose: el ejemplo que viene con JDashboardUI permite navegar fuentes, buscar y previsualizar iconos, seleccionar colores y copiar los códigos Chr(0x...) y colores B4X. Los archivos TTF ya se incluyen en la librería.

Convenciones de la API

  • Los parámetros y tipos que aparecen en cada firma se toman del código fuente de la biblioteca.
  • B4XView es una vista XUI; B4XFont es una fuente XUI y Object es un valor genérico.
  • Los nombres de variables en los ejemplos son ilustrativos: utiliza los nombres reales de tu proyecto.
  • El código se ha revisado frente a la biblioteca; no se ha realizado compilación B4J en este entorno.