Buscar
Encuesta
- Añadir nuevo comentario
- 18 lecturas
- Encuestas anteriores
Inicio de sesión
Navegación
Evitar maximizar ventana con GTK+
Por lo general cuando se trabaja en el desarrollo de aplicaciones graficas sobre Gnome, lo ideal es que estas se adapten al entorno, es decir, que los atributos que los componen como el tamaño de los controles se ajusten al medio sobre el cual operan, como lo es la resolucion de pantalla, lo cual hace que sean accesibles y manipulables por parte del usuario final.
Acaso esto no es asi? …en si depende con que herramientas estemos trabajando, me refiero a librerias para desarrollo, por ejemplo el hacer que la apariencia de un control(widget) se adecue a las propiedades del dispositivo de salida por defecto(monitor) es un mundo Triste si trabajamos(masoquistas Cheesy ) sobre X Window[ 0 ] usando la API basica, es decir Xlib[ 1 ]. No obstante, si somos menos puristas y empleamos la libreria GTK+ tendremos menos problemas, ya que, su forma de trabajar(contenedores) hace que nos “despreocupemos” de esos aspectos. Sin embargo hay ocasiones, como siempre, que sale uno que otro anarquico(como yo xD ) o como quieran llamarle, que le interesa trabajar de forma diferente.
Enfocando ahora si, a lo que dice el titulo, una forma de conseguir esto en C, es usando la funcion gtk_window_set_resizable [ 2 ] :
Código:
GtkWidget *main_window;
...
main_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
gtk_window_set_resizable(GTK_WINDOW (main_window),FALSE);
…
Donde el segundo parametro establece(TRUE) si la ventana que se le pasa como primer parametro puede ser redimensionada, sin embargo sucede que, si que definimos explicitamente los atributos de dimension de esta ventana, en el momento de cargar la aplicacion esta se amolda(dimensiona) de tal manera, que apenas logre acomodar los controles empaquetados en ella. Por lo que es logico pensar que si utilizamos un contenedor principal al cual añadimos los demas widgets y definimos la dimension que quisieramos que tuviera la ventana lograriamos nuestro cometido.
Código:
GtkWidget *vbox_main;
...
vbox_main = gtk_vbox_new(FALSE,4);
gtk_widget_set_usize(GTK_WIDGET (vbox_main),325,150);
…
[ 0 ] http://en.wikipedia.org/wiki/X_Window_System
[ 1 ] http://en.wikipedia.org/wiki/Xlib
[ 2 ] http://developer.gnome.org/doc/API/2.0/gtk/GtkWindow.html#gtk-window-set...
Mas Informacion: http://developer.gnome.org
http://radamanthys.homelinux.org/?p=14
- Añadir nuevo comentario
- 482 lecturas

Comentarios recientes
hace 4 semanas 3 días
hace 5 semanas 3 días
hace 23 semanas 1 hora
hace 43 semanas 3 días
hace 1 año 2 semanas
hace 1 año 6 semanas
hace 1 año 6 semanas
hace 1 año 32 semanas
hace 1 año 35 semanas
hace 1 año 36 semanas