downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ncurses_getmouse> <ncurses_getch
Last updated: Fri, 20 May 2011

view this page in

ncurses_getmaxyx

(PHP 4 >= 4.3.0, PHP 5 < 5.3.0, PECL ncurses >= 1.0.0)

ncurses_getmaxyxDevuelve el tamaño de una ventana

Descripción

void ncurses_getmaxyx ( resource $window , int &$y , int &$x )
Warning

Esta función ha sido declarada EXPERIMENTAL. Su comportamiento, su nombre y la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP. Use esta función bajo su propio riesgo.

Obtiene los tamaños horizontal y vertical de la ventana dada y los coloca en las variables entregadas.

Las variables deben ser pasadas como referencias, de modo que sean actualizadas cuando el usuario cambie el tamaño de la terminal.

Parámetros

window

La ventana medida

x

Este parámetro recibirá el ancho de la ventana

y

Este parámetro recibirá la altura de la ventana

Valores devueltos

No devuelve ningún valor.



add a note add a note User Contributed Notes ncurses_getmaxyx
vic at lfs dot net 11-Oct-2008 05:33
TIP 1: If you want to know the size of the main (default) ncurses screen, you can use the defined constant STDSCR
eg. ncurses_getmaxyx (STDSCR, $Height, $Width);
No need to create a window, get its size and delete it again (not sure if this works on php versions < 5 though).

TIP 2 : If you are creating a PHP console application and want to support terminal resizing and if you find that the ncurses screen doesn't actually resize when you resize your terminal (which was the case for me (on FreeBSD 5.3 at least)) you should end the current ncurses session and restart it again. Very easy to do this if you create your own ncurses class with a nice con- and destructor.
superzouz at hotmail dot com 27-Jun-2007 12:36
After some headscratching as to why my script was not detecting the terminal being resized... i discovered that the function would not report the new size of the terminal until the window is refreshed.
So this is the code that I am using to get the size of the screen:

$fullscreen = ncurses_newwin ( 0, 0, 0, 0);

// everytime you want to find out the size of the screen, write the following 2 lines:
ncurses_wrefresh($fullscreen);
ncurses_getmaxyx ($fullscreen, $y, $x );

 
show source | credits | stats | sitemap | contact | advertising | mirror sites