>Si me aceptas un consejo

Claro que acepto consejos, de ti y de todo el mundo, ésto y que te saquen de
tus fallos es lo mejor que te puede pasar, aunque reconozco que soy un
"poco" cabezón y hasta que no fallo en todo lo que se puede fallar no
desisto en mi empeño.

Si te digo la verdad al principio pensé en hacer interfaces redondas, pero
no encontré la forma con Gazpacho ni con la librería GTK+ (no sé si será
posible).

Pero al final me he quedado con una interfaz de lo más sencilla pero al
menos en mi opinión es intuitiva y fácil de usar que es lo que cuenta.

Saludos.

*******************************************************************
"Cada vez que uno de nuestros mayores desaperece es como si ardiese una
biblioteca"  Proverbio africano.



On 10/14/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> Hola:
>
> Si me aceptas un consejo respecto a esto de hacer interfaces gráficas,
> yo te diría que copies todo lo que puedas. Siempre que uno empieza a
> jugar con alguna herramienta de diseño de GUIs "se flipa" porque quiere
> hacer cosas muy originales y molonas (nos ha pasado a todos, y nos
> sigue pasando), pero la verdad es que al final te acabas dado cuenta de
> que has montado un tinglao que ningún usuario cuerdo va a entender.
>
> No quiero decir que no se pueda innovar, pero no es nada fácil hacer
> GUI amigables e intuitivas. Sólo tienes que ver los programas que usan
> en bancos, tiendas, organismos oficiales y que son en su mayor parte de
> "fabricación nacional". Es fácil ver ventanas con solapas
> que dentro tienen listas desplegables que activan menús en otras
> solapas que tienen listas interminables de botones (unos toogle y
> otros no) pero que a la vez intentan parecer un asistente... terribles.
>
> Por eso te digo que, a menos que hayas leído muuucho sobre interfaces
> gráficas, manipulación directa y demás, lo mejor que puedes hacer es
> buscar un programa de amplio uso que se parezca al tuyo y que te sea
> fácil de usar, y copiar vilmente la estructura de la interfaz gráfica.
> Y a partir de ahí ya le añades cosas de tu cosecha.
>
> Saludos
>
> PD: Por cuestiones obvias, mejor si el programa copiado es libre, no
> vaya a ser que te demanden por infringir alguna patente o algo :-P
>
>
> El Sat, 13 Oct 2007 10:45:54 +0200
> "Manuel David Jiménez Patiño" <[EMAIL PROTECTED]> escribió:
>
> > Eureka!! (lo encontré).
> >
> > Hola otra vez. David al final me di cuenta que lo que estaba
> > intentando hacer con el FileChooserDialog era algo un poco
> > complicado, por lo que al final decidí mostrar un FileChooserDialog
> > normalito con los botones tipicos de cancelar y abrir.
> >
> > Este Dialog se muestra cuando pinchas un botón de los normales, por
> > lo que el código al final queda de la siguiente manera:
> >
> > Para el botón normal:
> >
> > GtkWidget *button15;
> >
> > button15 = glade_xml_get_widget (xml, "button15");
> >
> > g_signal_connect (G_OBJECT (button15), "clicked", G_CALLBACK
> > (on_button15_clicked), NULL);
> >
> >
> > y en la función on_button15_clicked ponemos el código referido al
> > Dialog, que es el siguiente:
> >
> >
> > void on_button15_clicked(){
> >
> >
> >     GtkWidget *pFileSelection;
> >     GtkWidget *pDialog;
> >     const gchar *sChemin;
> >
> >     /* Creación de la ventana de selección */
> >
> >     pFileSelection = gtk_file_chooser_dialog_new("Abrir fichero",
> >                                       NULL,
> >                                       GTK_FILE_CHOOSER_ACTION_OPEN,
> >                                       GTK_STOCK_CANCEL,
> > GTK_RESPONSE_CANCEL, GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
> >                                       NULL);
> >
> >     /* Limitar las acciones a esta ventana */
> >     gtk_window_set_modal(GTK_WINDOW(pFileSelection), TRUE);
> >
> >         if (gtk_dialog_run (GTK_DIALOG (pFileSelection)) ==
> > GTK_RESPONSE_ACCEPT)
> >           {
> >             char *filename;
> >
> >             filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER
> > (pFileSelection));
> >             g_print ("%s\n", filename);
> >             g_free (filename);
> >           }
> >
> >     gtk_widget_destroy(pFileSelection);
> > }
> >
> >
> > Y ahora ya si consigo obtener la ruta del archivo seleccionado.
> >
> > Me he fijado del código en esta página:
> >
> > http://libros.es.gnome.org/librognome/librognome/librognome/x6030.html
> >
> > Nada más, gracias a todos los que me habeis ayudado, Cleto, Lorenzo,
> > David ... y todos los que se han molestado en leer mis e-mails.
> >
> > Saludos.
> >
> >
> > **********************************************************************
> > "Paraisos fiscales, especulación de terrenos ..., los paises si
> > apoyan el libre movimiento del dinero, y sin embargo rechazan el
> > libre movimiento de las personas, todo ello provoca situaciones como
> > esta:
> >
> >
> http://images.google.es/imgres?imgurl=http://www.pagina12.com.ar/fotos/20060919/notas/NA32FO01.JPG&imgrefurl=http://www.pagina12.com.ar/diario/contratapa/index-2006-09-19.html&h=155&w=200&sz=51&hl=es&start=2&sig2=s_69pWToLZN01pJIYTN0eQ&um=1&tbnid=--Vs3Y4QTx9VNM:&tbnh=81&tbnw=104&ei=ungQR-n_HIeQwAHhi51b&prev=/images%3Fq%3Dni%25C3%25B1o%2By%2Bbuitre%26svnum%3D10%26um%3D1%26hl%3Des%26client%3Dfirefox%26rls%3Dorg.mozilla:en-US:unofficial%26sa%3DG
> >
> >
> > On 10/12/07, Manuel David Jiménez Patiño <[EMAIL PROTECTED]>
> > wrote:
> > >
> > >
> > >
> > > >No entiendo muy bien lo que pretendes. El FileChooserDialog tiene
> > > >su propia ventana, ¿por qué lo quieres definir en el glade?
> > >
> > > Hola David:
> > >
> > > Yo me hubiese preguntado lo mismo que tú. He visto muchos ejemplos
> > > escritos en código C y Python que cargan un FileChooserDialog de la
> > > manera que tú has indicado.
> > >
> > > Lo que pasa es que si te fijas cuando creas un FileChooserDialog a
> > > parte del hueco para los dos típicos botones Cancelar y Abrir, te
> > > deja otro que generalmente nadie utiliza. Pero bien en mi caso ese
> > > espacio lo he agrandado y lo he llenado con 10 botones para
> > > realizar diferentes tareas. Por lo que mi razonamiento ha sido que
> > > sería mucho más fácil crear todos esos botones con Gazpacho que no
> > > crearlos todos a pelo con código y así de paso  haría uso de la
> > > librería libglade y podría separar mejor la capa de presentación y
> > > la capa de dominio.
> > >
> > > Quizá tendría que haberlo dicho antes.
> > >
> > > Un saludo.
> > >
> > >
> > >
> > >
> > >
> > > On 10/12/07, [EMAIL PROTECTED] < [EMAIL PROTECTED]> wrote:
> > > >
> > > >
> > > > Hola:
> > > >
> > > > No entiendo muy bien lo que pretendes. El FileChooserDialog tiene
> > > > su propia ventana, ¿por qué lo quieres definir en el glade?
> > > > Simplemente créalo cuando lo necesites. No puede ser más fácil.
> > > >
> > > > Ejemplo en Python:
> > > >
> > > >       chooser = gtk.FileChooserDialog(
> > > >          title = 'Select target folder',
> > > >          action = gtk.FILE_CHOOSER_ACTION_SELECT_FOLDER,
> > > >          buttons = (gtk.STOCK_CANCEL,
> > > >                     gtk.RESPONSE_CANCEL,
> > > >                     gtk.STOCK_OPEN,
> > > >                     gtk.RESPONSE_OK ))
> > > >
> > > >       response = chooser.run()
> > > >       path = chooser.get_filename()
> > > >       chooser.destroy()
> > > >
> > > >       if response != gtk.RESPONSE_OK:
> > > >           ...
> > > >
> > > >
> > > > Saludos
> > > >
> > > >
> > > > El Fri, 12 Oct 2007 18:06:35 +0200
> > > > "Manuel David Jiménez Patiño" <[EMAIL PROTECTED]> escribió:
> > > >
> > > > > Hola otra vez, sigo sin saber hacer funcionar el dichoso botón
> > > > > GTKFileChooserButton. Asi que he partido de 0 y he construido
> > > > > con Gazpacho un GTKFILECHOOSERDIALOG, ahora bien lo intento
> > > > > cargar con libglade como hacía antes con una ventana:
> > > > >
> > > > >
> > > > > int main(int argc, char *argv[]) {
> > > > >
> > > > >     GtkWidget* window_main;
> > > > >
> > > > >
> > > > >
> > > > >     gtk_init(&argc, &argv);
> > > > >
> > > > >
> > > > >
> > > > >       window_main = prueba_crear_main();
> > > > >
> > > > >
> > > > >     gtk_main();
> > > > >
> > > > >     return 0;
> > > > > }
> > > > >
> > > > >
> > > >
> /*****************************************************************************************
> > > > > * fin del main
> > > > >
> > > >
> *****************************************************************************************/
> > > >
> > > > >
> > > > > GtkWidget * prueba_crear_main(void){
> > > > >
> > > > >   GladeXML *xml;
> > > > >   GtkWidget *window;
> > > > >
> > > > >
> > > > >
> > > > >   xml = glade_xml_new("dialog.glade", NULL, NULL);
> > > > >   glade_xml_signal_autoconnect(xml);
> > > > >
> > > > >   window = glade_xml_get_widget (xml, "fileselection1");
> > > > >
> > > > >
> > > > >
> > > > >   return window;
> > > > > }
> > > > >
> > > > > Compilo:
> > > > >
> > > > > gcc -o interfaz interfaz.c  `pkg-config --cflags --libs gtk+-
> > > > > 2.0 libglade-2.0  opencv --libs opencv
> > > > >
> > > > > y ejecuto:
> > > > > ./interfaz
> > > > >
> > > > > pero no me muestra el dialog.
> > > > >
> > > > > En cambio si hago lo mismo para una ventana si que me la
> > > > > muestra.
> > > > >
> > > > > ¿Alguno me puede ayudar?
> > > > >
> > > > > Estoy googleando pero no encuentro gran cosa.
> > > > >
> > > > > Un saludo.
> > > >
> > > >
> > > > --
> > > > ¿Usuario de Linux? ¿Qué eres? ¿un driver?
> > > >
> > > >
> > > >
> > >
>
>
> --
> ¿Usuario de Linux? ¿Qué eres? ¿un driver?
>
>
> _______________________________________________
> CRySoL mailing list
> http://crysol.inf-cr.uclm.es/
> https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol
>
>
>
_______________________________________________
CRySoL mailing list
http://crysol.inf-cr.uclm.es/
https://arco.inf-cr.uclm.es/cgi-bin/mailman/listinfo/crysol

Responder a