Technical Support
🟢 Online now
Hello 👋

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

jbtfloating

Botón de acción flotante con elementos expandibles, iconos y tooltip.

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

Botón flotante con menú expandible, acciones con iconos o imágenes, tooltips, sombras y distintos estilos de animación.

Maqueta visual ilustrativa de jbtfloating

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

Para qué sirve y cuándo utilizarlo

Botón flotante con menú expandible, acciones con iconos o imágenes, tooltips, sombras y distintos estilos de animación.

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.

' Floating action button with an expandable menu
Private Fab As jbtfloating
Private Fonts As JIconFont
Fonts.Initialize
Fab.Initialize(Me, "Fab")
Fab.AddToParent(Root, 540dip, 290dip, 56dip, 56dip, _
    xui.Color_RGB(67, 56, 202), xui.Color_White)
Fab.lcon(Fonts.IconFontAwesomeSolid, Chr(0xF067))
Fab.InitializeMenu(True, Root)
Fab.additemIcon("New", xui.Color_White, 12, Chr(0xF067), _
    Fonts.IconFontAwesomeSolid, xui.Color_White, _
    xui.Color_RGB(16,185,129), "Create a new record")
Fab.SetShadowOpacity(160)
Fab.AnimationType = 1

' Custom image item (file must exist in the project's Files)
Fab.additemImage("Profile", xui.Color_White, 12, File.DirAssets, _
    "avatar.png", 20, xui.Color_RGB(54,60,88), "Profile", False)

' Event callbacks
Private Sub Fab_ItemClicked(Item As String, Index As Int)
    Log(Item & " index=" & Index)
End Sub

Private Sub Fab_Click(Open As Boolean)
    Log("Open: " & Open)
End Sub

Referencia completa de los miembros públicos

Este módulo expone 21 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
InitializeMenu(Down As Boolean, Parent As B4XView) Configura el contenedor de opciones flotantes y la dirección de despliegue.
additemIcon(Text As String, txtColor As Int, txtsize As Int, Icon As String, Iconfont As B4XFont, IconColor1 As Int, BackgroundColor As Int, ToolTipText As String) Inserta una acción con glifo, colores y tooltip.
additemImage(Text As String, txtColor As Int, txtsize As Int, ImageDir As String, ImageFile As String, ImageSize As Float, BackgroundColor As Int, ToolTipText As String, ShowAsBadge As Boolean) Inserta una acción con imagen, tooltip y modo insignia opcional.
SetShadowOpacity(Alpha As Int) Define la opacidad de sombra (0–255).
Initialize(Callback As Object, EventName As String) Inicializa la instancia y, si se solicita, vincula Callback y EventName.
SetToolTip(Text As String, IconFont As B4XFont, Icon As String, IconColor2 As Int) Configura tooltip con un glifo de fuente.
SetToolTip2(Text As String, ImageDir As String, ImageName As String) Configura tooltip con una imagen.
ItemLabel(index As Int) As Label Devuelve la etiqueta de un elemento por índice.
HideMenu Oculta el menú de acciones.
DesignerCreateView(Base As Object, Lbl As Label, Props As Map) Hook de B4J Designer, no se invoca manualmente.
AddToParent(parent As B4XView, Left As Int, Top As Int, Width As Int, Height As Int, backgound As Int, IconTextColor As Int) Inserta el control en Parent con posición, tamaño y opciones iniciales.
Elevation(size As Float, color As Int) Aplica elevación visual y sombra.
setColorBg(colorbg As Int) Configura ColorBg; con un solo parámetro suele usarse como propiedad B4X.
lcon(font As B4XFont, icon As String) Establece el icono principal mediante fuente; ojo: empieza por letra ele.
setlogo(filedir As String, filename As String, size As Int) Establece una imagen principal.
GetBase As Pane Devuelve el Pane subyacente en B4J.
setLeft(Left As Int) Configura Left; con un solo parámetro suele usarse como propiedad B4X.
setTop(Top As Int) Configura Top; con un solo parámetro suele usarse como propiedad B4X.
setVisible(Flag As Boolean) Configura Visible; con un solo parámetro suele usarse como propiedad B4X.
setIconTextColor(Color As Int) Configura IconTextColor; con un solo parámetro suele usarse como propiedad B4X.
setShowAsBadge(v As Boolean) Configura ShowAsBadge; con un solo parámetro suele usarse como propiedad B4X.

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
ColorBg escritura
Left escritura
Top escritura
Visible escritura
IconTextColor escritura
ShowAsBadge escritura

Campos públicos

  • mBase As B4XView
  • Tag As Object
  • AnimationType As Int

Propiedades del Designer

  • IconColor
  • ColorExample

Eventos

  • Click(open As Boolean)
  • ItemClicked(Item As String, Index As Int)
  • MouseEntered
  • MouseExited

Ciclo de vida, compatibilidad y límites

El código fuente usa lcon (con letra ele minúscula), no Icon. En B4J GetBase devuelve Pane; el archivo también tiene una rama condicional para B4A.

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.