subrutina subwin

Finalidad

Crea una subventana dentro de una ventana existente.

Biblioteca

Biblioteca de curses (libcurses.a)

Sintaxis

#include <curses.h> WINDOW *subwin (VentanaPadre, NumLines, NumCols,Línea,Columna) VENTANA * ParentWindow ; int NumLines, NumCols, Línea, Columna;

Descripción

La subrutina subwin crea una subventana dentro de una ventana existente. Debe proporcionar coordenadas para la subventana relativa a la visualización del terminal. Recuerde que la subventana comparte el almacenamiento intermedio de ventana de su padre. Los cambios realizados en el almacenamiento intermedio de la ventana compartida en el área cubierta por una subventana, a través de la ventana padre o de cualquiera de sus subventanas, afectan a todas las ventanas que comparten el almacenamiento intermedio de la ventana.

Al cambiar la imagen de una subventana, es necesario llamar a la subrutina touchwin (subrutina touchwin) o línea de contacto en la ventana padre antes de llamar a la subrutina wrefresh (renovar o renovar subrutina) en la ventana padre.

Los cambios en una ventana afectarán a la imagen de caracteres de ambas ventanas.

Parámetros

Elemento Descripción
NumCols Indica el número de columnas verticales en el ancho de la subventana. Si se pasa 0 como valor de NumCols , la subventana se ejecuta desde la columna hasta el borde derecho de su ventana padre.
NumLines Indica el número de líneas horizontales en la altura de la subventana. Si se pasa 0 como el parámetro NumLines , la subventana se ejecuta desde la línea hasta la parte inferior de la ventana padre.
ParentWindow Especifica el padre de la subventana.
Columna Especifica la coordenada horizontal para la esquina superior izquierda de la subventana. Esta coordenada es relativa a las coordenadas (0, 0) del terminal, no a las coordenadas (0, 0) de la ventana padre.
Nota: Se hace referencia a la esquina superior izquierda del terminal mediante las coordenadas (0, 0).
Línea Especifica la coordenada vertical para la esquina superior izquierda de la subventana. Esta coordenada es relativa a las coordenadas (0, 0) del terminal, no a las coordenadas (0, 0) de la ventana padre.
Nota: Se hace referencia a la esquina superior izquierda del terminal mediante las coordenadas (0, 0).

Valores de retorno

Cuando la subrutina subwin es satisfactoria, devuelve un puntero a la estructura de subventana. De lo contrario, devuelve lo siguiente:

Elemento Descripción
ERR Indica que uno o varios de los parámetros no son válidos o que no hay suficiente almacenamiento disponible para la nueva estructura.

Ejemplos

  1. Para crear una subventana, utilice:
    WINDOW *my_window, *my_sub_window;

    my_window = newwin (derwin, newwin, or subwin Subroutine)
                    (5, 10, 20, 30);

    my_sub_window = subwin(my_window, 2, 5, 20, 30);
    my_sub_windowes ahora una subventana2líneas profundas,5columnas de ancho, empezando en las mismas coordenadas de su ventana padremy_window. Es decir, la esquina superior izquierda de la subventana está en coordenadas y = 20, x = 30y la esquina inferior derecha está en las coordenadas y = 21, x = 34.
  2. Para crear una subventana que se desecha con el lado derecho de su padre, utilice:
    WINDOW *my_window, *my_sub_window;

    my_window = newwin (derwin, newwin, or subwin Subroutine)
                    (5, 10, 20, 30);

    my_sub_window = subwin(my_window, 2, 0, 20, 30);

    my_sub_windowes ahora una subventana2líneas profundas, extendiéndose hasta el lado derecho de su ventana padremy_windowy empezando por las mismas coordenadas. Es decir, la esquina superior izquierda de la subventana está en las coordenadas y = 20, x = 30y la esquina inferior derecha está en las coordenadas y = 21, x = 39.

  3. Para crear una subventana en la esquina inferior derecha de su padre, utilice:
    WINDOW *my_window, *my_sub_window

    my_window = newwwin (derwin, newwin, or subwin Subroutine)
                (5, 10, 20, 30);

    my_sub_window = subwin(my_window, 0, 0, 22, 35);

    my_sub_windowes ahora una subventana que llena la esquina inferior derecha de su ventana padre,my_window, empezando por las coordenadas y = 22, x = 35. Es decir, la esquina superior izquierda de la subventana está en coordenadas y = 22, x = 35y la esquina inferior derecha está en las coordenadas y = 24, x = 39.