NCurses titulo y dimensiones de la consola

Temas sobre programación ( php, c, sql, html, perl, python, ruby, java, bash, etc ) y recursos ( herramientas, frameworks, hosting, cms, etc )

Moderadores: maiku, akodo

Responder
CDaniel
Forista Nuevo
Forista Nuevo
Mensajes: 1
Registrado: Jue Sep 30, 2010 2:26 am

NCurses titulo y dimensiones de la consola

Mensaje por CDaniel »

Hola a todos
Por ser mi primer post me voy a presentar, tengo 58 años y me gusta muchisimo la programación(por el momento como un entretenimiento) como emprenderán no voy a la universidad y me nutro de un manual de
Deitel&Deitel y los foros.-
Desconozco si enoja el echo de alguien que usa el sistema operativo Windows efectué preguntas en el foro de linux, pero creanme que hace unos cuantos días que estoy buscando información y google siempre me pone la pág. de uds. y con el forista ortigoza, que parece conocer la biblioteca curses.-
Bueno la pregunta es esa ¿como hacer para ponerle un titulo personalizado a la ventana creada con curses.h y como manejar las dimensiones de la misma?

Espero ayuda.
Gracias Daniel

Avatar de Usuario
tuxman
Forista Distinguido
Forista Distinguido
Mensajes: 1026
Registrado: Lun Feb 26, 2007 8:00 am
Ubicación: Guadalajara, Jalisco. Mexico
Contactar:

Re: NCurses titulo y dimensiones de la consola

Mensaje por tuxman »

Saludos.

Desconozco como manejar el titulo en ventajas que manejen NCurses la verdad, pero las dimensiones, al menos, se como se pueden "conocer", pero no se si se puedan cambiar.

Para saber cual es la dimension o "resolucion" de la pantalla en la que esta corriendo la aplicacion en NCurses, se puede usar este codigo:

Código: Seleccionar todo

// Suponiendo que se esta elaborando la aplicacion en lenguaje C
# include <stdio.h>
# include <ncurses.h>

int main ()
{
   // Intento iniciar NCurses
   if ( initscr () != NULL )
   {
      // No ha fallado, por lo que ya puedo ver de que tamaño es la pantalla
      int dim_x , dim_y; // Estas variables solo me ayudaran a almacenar las dimensiones
      getmaxyx ( stdscr , dim_y , dim_x ); // Obtengo las dimensiones
      printw ( "La dimension de la pantalla es: %i de alto, %i de ancho\n" , dim_y , dim_x );
      // Aqui, para poder ver la salida del programa, se refresca la pantalla
      refresh ();
      // Y hago una pausa
      getch ();
      // Termino y cierro NCurses
      endwin ();
   }
   return ( 0 ); 
}
La idea es que se requiere de la funcion getmaxyx, la cual pide tres argumentos:

1.- De qué ventana saber las dimensiones (si sigue estudiando NCurses, podra saber posteriormente que se pueden crear ventanas en NCurses, pero ese es un tema aparte y mas adelantado). En este caso, usted quisiera saber las dimensiones de la terminal completa, lo cual esta representado por "stdscr", que es la "Standard Screen".

2.- Donde va a guardar el valor de la dimension en Y

3.- Donde va a guardar el valor de la dimension en X

Este codigo funciona en GNU/Linux, pero no estoy seguro en windows, mas que nada por la pausa, porque en windows existe una funcion ya que se llama "getch", y es para hacer lo mismo, pausar hasta recibir un teclaso cualquiera, pero en NCurses tambien existe una llamada getch que hace lo mismo, por lo que no se si funcione la pausa en Windows, pero bueno, esos son detalles aparte.

Realmente desconozco si se puede establecer la dimension de la terminal, pero al menos con esto ya sabra de que tamaño es.

Espero haber ayudado.

Saludos.
Edita los nombres de tus post con "[SOLUCIONADO]" cuando encuentres una solución a tu problema.

Lenovo G470
Intel Core i3 2.1 GHz (2310M)
Chakra Linux.

Responder
  • Temas similares
    Respuestas
    Vistas
    Último mensaje