# VMdiView

Un objeto de esta clase representa a una de las vistas centrales de la ventana principal. Algunas de las funciones solo están disponibles cuando el boot-mode de la [VMainWindow](https://doc.velneo.com/velneo-vdevelop/scripts/lenguajes/javascript/clases/vmainwindow) es MDI.

Se puede coger el [VRoot](https://doc.velneo.com/velneo-vdevelop/scripts/lenguajes/javascript/clases/vroot) que contiene la vista si no es una vista genérica.

## Indice de funciones

### **Generales**

Widget [centralWidget](#centralwidget)()

Number [type](#type)()

### **Genéricas de ventana**

void [close](#close)()

Number [height](#height)()

void [hide](#hide)()

Boolean [isVisible](#isvisible)()

void [repaint](#repaint)()

void [setFocus](#setfocus)()

void [setStyleSheet](#setstylesheet)( String szSS )

void [setTitle](#settitle)( String szTitle )

void [show](#show)()

String [styleSheet](#stylesheet)()

String [title](#title)()

void [update](#update)()

Number [width](#width)()

Number [x](#x)()

Number [y](#y)()

### **Funcionales sólo en MDI**

Boolean [isMaximized](#ismaximized)()

Boolean [isMinimized](#isminimized)()

void [lower](#lower)()

void [move](#move)( Number x, Number y )

void [raise](#raise)()

void [resize](#resize)( Number nWidth, Number nHeight )

void [showMaximized](#showmaximized)()

void [showMinimized](#showminimized)()

void [showNormal](#shownormal)()

### **De sólo vistas de datos**

VRoot [root](#root)()

## Enumeraciones

**Tipos de vistas**

* TypeGeneric = 0
* TypeForm = 1
* TypeGrid = 2
* TypeSlot = 3
* TypeTree = 4
* TypeMultiView = 5
* TypeMultiViewTree = 6
* TypeFormBlock = 7
* TypeReportPreview = 8
* TypeViewFlow = 10
* TypeListAlternator = 11
* TypeComboView = 12
* TypeListView = 13
* TypeQmlList = 14
* TypeAdvancedGrid = 15
* TypeQmlForm = 16

## Documentación de funciones

### Funciones generales

#### Widget centralWidget() <a href="#centralwidget" id="centralwidget"></a>

Devuelve el [widget](https://doc.velneo.com/velneo-vdevelop/scripts/lenguajes/javascript/clases/widget) incrustado dentro de la vista.

#### Number type() <a href="#type" id="type"></a>

Devuelve el tipo de vista. Ver enum de tipos de vistas.

### Funciones genéricas de ventana

#### void close() <a href="#close" id="close"></a>

Cierra la ventana.

{% hint style="danger" %}
Esta función no puede ser usada en un [manejador de evento](https://doc.velneo.com/velneo-vdevelop/proyectos-objetos-y-editores/proyecto-de-aplicacion/sub-objetos-de-vistas-de-datos/manejador-de-evento) disparado desde la señal de [pre-inicialización](https://doc.velneo.com/proyectos-objetos-y-editores/proyecto-de-aplicacion/sub-objetos-de-vistas-de-datos/conexion-de-evento#pre-inicializacion) de un objeto, ya que en ese momento el objeto aún no ha sido creado.
{% endhint %}

#### Number height() <a href="#height" id="height"></a>

Devuelve el alto en píxeles de la ventana.

#### void hide() <a href="#hide" id="hide"></a>

Oculta la vista.

#### Boolean isVisible() <a href="#isvisible" id="isvisible"></a>

Devuelve true si la vista está visible.

#### void repaint() <a href="#repaint" id="repaint"></a>

Fuerza el repintado de la ventana salvo que esté oculta o las actualizaciones desactivadas.

#### void setFocus() <a href="#setfocus" id="setfocus"></a>

Fija el foco en la ventana.

#### void setStyleSheet( String szSS ) <a href="#setstylesheet" id="setstylesheet"></a>

Cambia el script CSS que se aplicará a la vista.

Parámetros:

* szCSS: texto del script CSS.

#### void setTitle( String szTitle ) <a href="#settitle" id="settitle"></a>

Cambia el título de la ventana.

Parámetros:

* szTitle: texto del título de la ventana.

#### void show() <a href="#show" id="show"></a>

Hace visible la vista.

#### String styleSheet() <a href="#stylesheet" id="stylesheet"></a>

Devuelve el script CSS que se está aplicando a la vista.

#### String title() <a href="#title" id="title"></a>

Devuelve el título de la ventana.

#### void update() <a href="#update" id="update"></a>

Actualiza la ventana. No produce un repintado inmediato para reducir el flicker.

#### Number width() <a href="#width" id="width"></a>

Devuelve el ancho en píxeles de la ventana.

#### Number x() <a href="#x" id="x"></a>

Devuelve la posición x de la ventana en píxeles.

#### Number y() <a href="#y" id="y"></a>

Devuelve la posición y de la ventana en píxeles.

### Funciones de sólo en MDI

#### Boolean isMaximized() <a href="#ismaximized" id="ismaximized"></a>

Devuelve true si la ventana está maximizada.

#### Boolean isMinimized() <a href="#isminimized" id="isminimized"></a>

Devuelve true si la ventana está minimizada.

#### void lower() <a href="#lower" id="lower"></a>

Coloca la ventana en la posición más baja de la pila de ventanas.

#### void move( Number x, Number y ) <a href="#move" id="move"></a>

Mueve la ventana a la posición x, y.

Parámetros:

* x: posición horizontal en píxeles de la esquina superior izquierda de la ventana.
* y: posición vertical en píxeles de la esquina superior izquierda de la ventana.

#### void raise() <a href="#raise" id="raise"></a>

Coloca la ventana en la posición más alta de la pila de ventanas.

#### void resize( Number nWidth, Number nHeight ) <a href="#resize" id="resize"></a>

Modifica el tamaño de la ventana.

Parámetros:

* nWidth: nuevo ancho en píxeles de la ventana.
* nHeight: nuevo alto en píxeles de la ventana.

#### void showMaximized() <a href="#showmaximized" id="showmaximized"></a>

Muestra la ventana maximizada.

#### void showMinimized() <a href="#showminimized" id="showminimized"></a>

Muestra la ventana minimizada.

#### void showNormal() <a href="#shownormal" id="shownormal"></a>

Muestra la ventana normal.

### Funciones de sólo vistas de datos

#### VRoot root() <a href="#root" id="root"></a>

Devuelve un objeto de la clase [VRoot](https://doc.velneo.com/velneo-vdevelop/scripts/lenguajes/javascript/clases/vroot) que representa a la vista dentro de la ventana.

## Ejemplos

### 1. Analiza del contenido de la vista actual

```javascript
///////////////////////////////////////////////////////////
// Ejemplo de análisis del contenido de la vista en curso

// Se obtiene la vista en curso
var view = theMainWindow.currentView();

if ( view )
{
    // Cogemos el objeto "root" de la vista
    var root = view.root();

    if ( r / oot )
    {
        // Cogemos el contenido del root: ficha, lista o ninguno
        var rootContent = root.content();

        if ( rootContent )
        {
            if ( root.objectInfo().inputType() == VObjectInfo.IORecord )
            {
                // Si el contenido es un registro
                alert( "Contenido: ficha del registro " + rootContent.fieldToString( "ID" ) + " - " + rootContent.fieldToString( "NAME" ) );
            }
            else if ( root.objectInfo().inputType() == VObjectInfo.IOList )
            {
                // Si el contenido es una lista
                alert( "Contenido: lista de " + rootContent.listSize() + " registros de la tabla " + rootContent.tableInfo().name() );
            }
        }
        else
            alert( "Contenido ninguno" );
    }
    else
        alert( "No es vista de datos" );
}
else
    alert( "No hay ninguna vista" );
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://doc.velneo.com/velneo-vdevelop/scripts/lenguajes/javascript/clases/vmdiview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
