<!DOCTYPE html>
<html lang="es" dir="ltr">
<head>
<base href="../../../../">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Ejemplos de programación de controles en el Editor de diálogos</title>
<link rel="shortcut icon" href="media/navigation/favicon.ico">
<link type="text/css" href="normalize.css" rel="Stylesheet">
<link type="text/css" href="prism.css" rel="Stylesheet">
<link type="text/css" href="default.css" rel="Stylesheet">
<script type="text/javascript" src="polyfills.js"></script><script type="text/javascript" src="languages.js"></script><script type="text/javascript" src="es/langnames.js"></script><script type="text/javascript" src="flexsearch.debug.js"></script><script type="text/javascript" src="prism.js"></script><script type="text/javascript" src="help2.js" defer></script><script type="text/javascript" src="a11y-toggle.js" defer></script><script type="text/javascript" src="paginathing.js" defer></script><script type="text/javascript" src="es/bookmarks.js" defer></script><script type="text/javascript" src="es/contents.js" defer></script><script type="text/javascript" src="help.js" defer></script><meta name="viewport" content="width=device-width,initial-scale=1">
</head>
<body>
<header id="TopLeftHeader"><a class="symbol" href="es/text/shared/05/new_help.html"><div></div></a><a class="logo" href="es/text/shared/05/new_help.html"><p dir="auto">Ayuda de LibreOffice 25.2</p></a><div class="dropdowns"><div class="modules">
<button type="button" data-a11y-toggle="modules-nav" id="modules" aria-haspopup="true" aria-expanded="false" aria-controls="modules-nav">Módulo</button><nav id="modules-nav" hidden=""></nav>
</div></div></header><aside class="leftside"><input id="accordion-1" name="accordion-menu" type="checkbox"><label for="accordion-1" dir="auto">Contenido</label><div id="Contents" class="contents-treeview"></div></aside><div id="SearchFrame"><div id="Bookmarks">
<input id="search-bar" type="search" class="search" placeholder="Buscar en los marcadores del módulo elegido" dir="auto"><div class="nav-container" tabindex="0"><nav class="index" dir="auto"></nav></div>
</div></div>
<div id="DisplayArea" itemprop="softwareHelp" itemscope="true" itemtype="http://schema.org/SoftwareApplication">
<noscript><div id="WarnJS"><h1 dir="auto">Active JavaScript en el navegador para mostrar las páginas de ayuda de LibreOffice.</h1></div></noscript>
<a id="bm_id3155338"></a><meta itemprop="keywords" content="ejemplos de programación para controles">
<meta itemprop="keywords" content="diálogos,cargar (ejemplo)">
<meta itemprop="keywords" content="diálogos,mostrar (ejemplo)">
<meta itemprop="keywords" content="controles,leer o editar propiedades (ejemplo)">
<meta itemprop="keywords" content="cuadros de lista,quitar entradas de (ejemplo)">
<meta itemprop="keywords" content="cuatros de lista,añadir entradas a (ejemplo)">
<meta itemprop="keywords" content="ejemplos, programar controles">
<meta itemprop="keywords" content="editor de diálogos,ejemplos de programación para controles">
<meta itemprop="keywords" content="Herramientas,LoadDialog">
<a id="samplecode"></a>
<h1 id="hd_id3155338" dir="auto">
<a id="sample_code"></a>Ejemplos de programación de controles en el Editor de diálogos</h1>
<p id="par_id3153031" class="paragraph" dir="auto">Los ejemplos siguientes guían en la creación de un <a target="_top" href="es/text/sbasic/guide/create_dialog.html">diálogo</a> llamado «Dialog1». Use las opciones de la barra de herramientas <span class="emph">Cuadro de herramientas</span> del editor de diálogos para crear el diálog y añada los siguientes controles: una <span class="emph">casilla</span> denominada «CheckBox1», un <span class="emph">campo de etiqueta</span> denominado «Label1», un <span class="emph">botón</span> denominado «CommandButton1» y un <span class="emph">cuadro de lista</span> denominado «ListBox1».</p>
<div class="warning">
<div class="noteicon" dir="auto"><img src="media/icon-themes/res/helpimg/warning.svg" alt="Icono de aviso" style="width:40px;height:40px;"></div>
<div class="notetext"><p dir="auto">Haga un uso coherente de las mayúsculas y las minúsculas cuando adjunte un control a una variable de objeto.</p></div>
</div>
<br>
<h3 id="hd_id3154909" dir="auto">Función global para cargar diálogos</h3>
<div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
Function LoadDialog(Libname as String, DialogName as String, Optional oLibContainer)
Dim oLib as Object ' com.sun.star.script.XLibraryContainer
Dim oLibDialog as Object
Dim oRuntimeDialog as Object
If IsMissing(oLibContainer) Then
oLibContainer = DialogLibraries
End If
oLibContainer.LoadLibrary(LibName)
oLib = oLibContainer.GetByName(Libname)
oLibDialog = oLib.GetByName(DialogName)
oRuntimeDialog = CreateUnoDialog(oLibDialog)
LoadDialog() = oRuntimeDialog
End Function
</code></pre></div>
<p id="par_id3153032" class="paragraph" dir="auto">La función <span class="literal">LoadDialog</span> se almacena en <span class="literal">Tools.ModuleControls</span>, que está disponible en Macros y diálogos de la aplicación.</p>
<h3 id="hd_id3149412" dir="auto">Mostrar un diálogo</h3>
<div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
REM definición global de variables
Dim oDialog1 AS Object
Sub StartDialog1
With GlobalScope.BasicLibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = Tools.ModuleControls.LoadDialog("Standard", "Dialog1")
oDialog1.Execute()
End Sub
</code></pre></div>
<h3 id="hd_id3150042" dir="auto">Lectura o edición de las propiedades de los controles en el programa</h3>
<div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
Sub Sample1
With GlobalScope.Basiclibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = Tools.LoadDialog("Standard", "Dialog1")
REM obtener modelo de diálogo
oDialog1Model = oDialog1.Model
REM mostrar texto de Label1
oLabel1 = oDialog1.GetControl("Label1")
MsgBox oLabel1.Text
REM establecer texto nuevo para el control Label1
oLabel1.Text = "Archivos nuevos"
REM mostrar propiedades de modelo para el control CheckBox1
oCheckBox1Model = oDialog1Model.CheckBox1
MsgBox oCheckBox1Model.Dbg_Properties
REM establecer estado nuevo para CheckBox1 para el modelo del control
oCheckBox1Model.State = 1
REM mostrar propiedades de modelo para el control CommandButton1
oCMD1Model = oDialog1Model.CommandButton1
MsgBox oCMD1Model.Dbg_Properties
REM mostrar propiedades del control CommandButton1
oCMD1 = oDialog1.GetControl("CommandButton1")
MsgBox oCMD1.Dbg_Properties
REM ejecutar diálogo
oDialog1.Execute()
End Sub
</code></pre></div>
<h3 id="hd_id3145387" dir="auto">Añadir una entrada a un cuadro de lista</h3>
<div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
Sub AddEntry
With GlobalScope.Basiclibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = ModuleControls.LoadDialog("Standard", "Dialog1")
REM añade una entrada nueva al cuadro de lista
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
Dim iCount as integer
iCount = oListbox.ItemCount
oListbox.additem("Elemento nuevo" & iCount,0)
End Sub
</code></pre></div>
<h3 id="hd_id3147071" dir="auto">Eliminar una entrada de un cuadro de lista</h3>
<div class="bascode" itemscope="true" itemtype="http://schema.org/SoftwareSourceCode" itemprop="codeSampleType" content="snippet" data-tooltip="Pulse en el texto para copiarlo en el portapapeles"><pre dir="auto"><code class="language-visual-basic line-numbers">
Sub RemoveEntry
With GlobalScope.Basiclibraries
If Not .IsLibraryLoaded("Tools") Then .LoadLibrary("Tools")
End With
oDialog1 = Tools.ModuleControls.LoadDialogLoadDialog("Standard", "Dialog1")
REM eliminar la primera entrada del cuadro de lista
oDialog1Model = oDialog1.Model
oListBox = oDialog1.GetControl("ListBox1")
oListbox.removeitems(0,1)
End Sub
</code></pre></div>
<a id="relatedtopics"></a><div class="relatedtopics">
<p class="related" itemprop="mentions" dir="auto"><a id="related"></a><span class="emph">Temas relacionados</span></p>
<div class="relatedbody" itemprop="mentions">
<div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/sbasic/guide/control_properties.html">Cambiar las propiedades de los controles del Editor de diálogos</a></p></div>
<div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/sbasic/guide/create_dialog.html">Crear un diálogo de Basic</a></p></div>
<div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/sbasic/guide/insert_control.html">Creación de controles en el Editor de diálogos</a></p></div>
<div class="embedded"><p class="embedded" dir="auto"><a target="_top" href="es/text/sbasic/guide/show_dialog.html">Abrir un cuadro de diálogo con Basic</a></p></div>
</div>
</div>
</div>
<div id="DonationFrame"></div>
<footer><h2 style="text-align: center;"><a href="https://books.libreoffice.org" target="_blank">Libros de LibreOffice</a></h2>
<div class="noteicon" dir="auto" style="display:flex;justify-content:center;flex-wrap:wrap;row-gap:15px;">
<img src="media/navigation/libo-writer.svg" alt="Writer Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-calc.svg" alt="Calc Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-impress.svg" alt="Impress Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-draw.svg" alt="Draw Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-base.svg" alt="Base Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-math.svg" alt="Math Icon" style="width:60px;height:60px;"><img src="media/navigation/libo-symbol-black.svg" alt="Getting Started Icon" style="width:60px;height:60px;">
</div>
<div id="DEBUG" class="debug">
<h3 class="bug">Help content debug info:</h3>
<p dir="auto">This page is: <a href="https://opengrok.libreoffice.org/xref/help/source/text/sbasic/guide/sample_code.xhp" target="_blank">/text/sbasic/guide/sample_code.xhp</a></p>
<p dir="auto">Title is: Ejemplos de programación de controles en el Editor de diálogos</p>
<p id="bm_module" dir="auto"></p>
<p id="bm_system" dir="auto"></p>
<p id="bm_HID" dir="auto"></p>
</div></footer>
</body>
</html>