Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sun 21 Dec 2014, 05:29
All times are UTC - 4
 Forum index » House Training » Users ( For the regulars ) » Usuarios de habla Hispana
Creando interfaces en GtkDialog
Moderators: rarsa
Post new topic   Reply to topic View previous topic :: View next topic
Page 2 of 4 [50 Posts]   Goto page: Previous 1, 2, 3, 4 Next
Author Message
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sun 27 Jul 2014, 09:06    Post subject: Ventana entrada de textos.  

La ventanas de entradas de texto o "ENTRY" , las utilizaremos para entrar cadenas que luego utilizaremos en nuestro programa para otras cosas.
Aqui vemos un ejemplo:

Code:

#! /bin/bash

export MAIN_DIALOG='
 <vbox>
  <entry>
    <default>Entrada texto</default>
    <variable>ENTRY</variable>
  </entry>
  <hbox>
   <button ok>
     <action>$ENTRY &</action>   
   </button>
   
   <button cancel></button>
  </hbox>
 </vbox>
'

gtkdialog --program=MAIN_DIALOG



Si en la entrada de texto que nos aparece al ejecutar este codigo.

escribimos abiword y luego OK se nos abrira el programa Abiword.

si luego mtpaint y OK se abrira Mtpaint y asi sucesivamente.

Esto es por que coge la cadena ENTRY y mediante el boton OK ejecuta el nombre que tenga esa cadena.

Entry lo podemos usar para introducir cualquier dato, nombres, numeros y un largo etc... en nuestros programas.

default mostrara el texto por defecto.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sun 27 Jul 2014, 09:52    Post subject: Algunos atributos de ventana entry.  

Para no hacer los post inmensos pongo el siguiente programa para bajar.

Si lo abrimos como texto podemos ver varios "entry" con distintos atributos.

El primer ENTRY1 es normal

El segundo ENTRY2 esta bloqueado esto es que no se podra escribir nada en el.

El tercer ENTRY3 Hace invisible la entrada de texto en la ventana, muy util cuando queremos escribir paswords.

El cuarto ENTRY4 Nos marca la maxima longitud de texto a introducir en la ventana.

El quinto ENTRY5 Nos dice el ancho visible de la ventana del ENTRY, que en este caso le hemos marcado 35 osea que meteremos 35 caracteres que seran visibles de una vez y apartir de ahi iran entrando por scroll.

Bueno y esto es todo.
entry.gz
Description 
gz

 Download 
Filename  entry.gz 
Filesize  422 Bytes 
Downloaded  52 Time(s) 
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sun 27 Jul 2014, 09:54    Post subject: continuando..  

Bueno se me olvido que al final lo que hace el boton ok es escribir todas las entradas en un archivo /tmp/tmp y lo presenta en pantalla mediante el editor
leafpad.

El boton Cancel sale del programa.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sun 27 Jul 2014, 17:22    Post subject: Surfeando....  

Surfeando por el foro en ingles me encontre este post de "don570" muy interesante para crear botones con svg:

http://www.murga-linux.com/puppy/viewtopic.php?t=88715
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Tue 29 Jul 2014, 12:45    Post subject: Variacion al programa entry..  

Vamos ha hacer una modificacion al programa entry :

Code:

#! /bin/bash
export M100="Por defecto"
echo $M100
export MAIN_DIALOG='
 <vbox>
  <hbox>
    <text>
      <label>'$M100'</label>
    </text>
    <entry activates_default="true">
      <variable>OCD</variable> 
      <default>Introduzca texto</default>
      <variable>ENTRY1</variable>
    </entry>
  </hbox>

  <hbox>
    <text>
      <label>Editable:</label>
    </text>
    <entry editable="false">
      <default>Entrada bloqueada</default>
      <variable>ENTRY2</variable>
    </entry>
  </hbox>

  <hbox>
    <text>
      <label>invisible_char:</label>
    </text>
    <entry invisible_caracter="x" visibility="false">
      <default>'$M100'</default>
      <variable>ENTRY3</variable>
    </entry>
  </hbox>

  <hbox>
    <text>
      <label>max_longitud:</label>
    </text>
    <entry max_length="5">
      <default>Introduzca texto</default>
      <variable>ENTRY4</variable>
    </entry>
  </hbox>

  <hbox>
    <text>
      <label>Ancho_ventana:</label>
    </text>
    <entry width_chars="35">
      <default>'$M100'</default>
      <variable>ENTRY5</variable>
    </entry>
  </hbox>

  <hbox>
   <button>
      <label>Deshabilita</label>
      <action>disable:OCD</action>
   </button>
 
   <button>
      <label>habilita</label>
      <action>enable:OCD</action>
   </button>

   <button ok>
      <action>echo $ENTRY1 > /tmp/tmp </action>
      <action>echo $ENTRY2 >> /tmp/tmp </action>
      <action>echo $ENTRY3 >> /tmp/tmp </action>
      <action>echo $ENTRY4 >> /tmp/tmp </action>
      <action>echo $ENTRY5 >> /tmp/tmp </action>
      <action>leafpad /tmp/tmp &</action>
   </button>
   <button cancel></button>
  </hbox>
 </vbox>
'

gtkdialog3 --program=MAIN_DIALOG



Basicamente es la linea del codigo en el primer ENTRY1:

<variable>OCD</variable>

Que asigna la variable OCD a la entrada ENTRY1 y esto hace como en el programa anterior que esta entrada la podamos habilitar o desabilitar cuando queramos, como hacemos en los dos botones creados para ello abajo.

Bueno esto puede ser muy util en programas que segun las circunstancias del programa sea necesario deshabilitar o habilitar parte del programa como,
botones, entradas, combobox, etc...
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Tue 29 Jul 2014, 12:50    Post subject: Otra cosa a tener encuenta en este programa es..  

Otra cosa a tener en cuenta en este programa es la sustitucion del texto de las labels por una variable como es en este el caso la variable M100="Por defecto".

Esto es muy util y este texto puede ser para todo como Botones, Textos, Labels, frame y un largo etc..

Es muy util por que poniendolo como variables en cualquier momento podemos sustituir el texto de un monton de botones, cambiado el texto de asignacion a esa variable.

Para que puede ser esto util por ejemplo cuando queremos portar nuestro programa a otro idioma.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Tue 29 Jul 2014, 12:58    Post subject: Espero que este tema sea mas participativo...  

Gtkdialog es un lenguaje para crear programas relativamente sencillo, y en el que se basan muchos programas de Puppy, es interesante de aprender.

En cualquier momento nos podemos crear un pequeño programa para que realize nuestras tareas mas cotidianas de forma sencilla.

Me gustaria que este tema fuera mas participativo, y no se convirtiera en un monologo.

En cualquier caso esta abierto a sugerencias, dudas, criticas todo ... menos silencio..
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Tue 29 Jul 2014, 17:06    Post subject: Señales al sistema.  

Podemos hacer que nuestro programa envie señales al sistema.

Para verlas ejecutar este progama desde el terminal:

./programa

Veremos que segun pasemos el raton por los botones estos envian una señal al terminal.

Code:

#! /bin/bash

export MAIN_DIALOG='
 <vbox>
  <frame Button signals>
    <hbox>
      <button>
        <label>Por_defecto</label>
      </button>
      <button>
        <label>Enter/Leave/Clicked</label>
        <action signal="clicked">echo Signal: Cliquea /default/</action>
        <action signal="enter">echo Signal: enter</action>
        <action signal="leave">echo Signal: leave</action>
      </button>
      <button>
        <label>Pressed/Released/Clicked</label>
        <action signal="clicked">echo Signal: clicked /default/</action>
        <action signal="pressed">echo Signal: pressed</action>
        <action signal="released">echo Signal: released</action>
      </button>
    </hbox>
  </frame>
  <hbox>
   <button cancel>
     <action signal="enter">echo Deseas realmente salir?</action>
     <action type="exit">Cancel</action>
   </button>
   <button ok>
     <action signal="enter">echo Deseas salir realmente?</action>
     <action type="exit">OK</action>
   </button>
  </hbox>
 </vbox>
'
gtkdialog --program=MAIN_DIALOG
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Wed 30 Jul 2014, 12:38    Post subject: Los checkbox.  

Los checkbox son aquellas ventanitas pequeñas que picamos y cuya finalidad es seleccionar acciones o cosas de un programa.

Con un ejemplo se ve mejor que mil palabras.

#! /bin/bash

export MAIN_DIALOG='
<vbox>
<frame Ejemplo de Checkbox >
<checkbox>
<label>Esto es un checkbox...</label>
<variable>CHECKBOX</variable>
<action>echo Checkbox esta ahora $CHECKBOX .</action>
<action>if true enable:ENTRY</action>
<action>if false disable:ENTRY</action>
</checkbox>
<entry>
<default>Texto de entrada</default>
<variable>ENTRY</variable>
<visible>disabled</visible>
</entry>
<checkbox>
<label>Yo deseo activar boton OK ahora</label>
<default>true</default>
<variable>ANOTHER_CHECKBOX</variable>
<action>if true enable:OKBUTTON</action>
<action>if false disable:OKBUTTON</action>
</checkbox>
</frame>
<hbox>
<button ok>
<variable>OKBUTTON</variable>
</button>
<button cancel></button>
</hbox>
</vbox>
'

gtkdialog --program=MAIN_DIALOG

Vemos que con checkbox actuamos sobre las variables de habilitacion o desahabilitacion del la ventana de ENTRY y la del boton Ok.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Wed 30 Jul 2014, 13:56    Post subject: El editor  

El editor es una ventana donde podemos recibir los datos de multiples sitios.

Correr el siguiente programa:

Code:

#! /bin/bash

echo "  " > /mnt/home/temp.txt

export MAIN_DIALOG='
<vbox>
    <edit>
      <variable>EDITOR</variable>
      <width>350</width><height>150</height>
      <input file>/mnt/home/temp.txt</input>
    </edit>
    <hbox>
      <button>
        <label>Recibir_dato</label>
        <action type="clear">EDITOR</action>
        <action>echo "hola" >> /mnt/home/temp.txt</action>       
        <action>refresh:EDITOR</action>
      </button>
      <button cancel></button>
      <button ok></button>
    </hbox>
</vbox>
'

gtkdialog --program=MAIN_DIALOG


Lo datos los recibimos de un archivo en este caso temp.txt.

Y segun lo refresquemos con el boton "Recibir datos" veremos las actualizaciones.

Este refresco lo podemos hacer como vimos en programas anteriores con un timer.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Wed 30 Jul 2014, 14:23    Post subject: Atributos de Editor.  

Podemos varia atributos de Editor al igual que lo demas.

Code:

#! /bin/bash

export MAIN_DIALOG='
<vbox>
    <edit editable="false">
      <variable>EDITOR2</variable>
      <width>350</width><height>50</height>
      <default>No es editable</default>
    </edit>
    <edit accepts-tab="false">
      <variable>EDITOR1</variable>
      <width>350</width><height>50</height>
      <default>No acepta tabulacion</default>
    </edit>
    <edit indent="25">
      <variable>EDITOR2</variable>
      <width>350</width><height>50</height>
      <default>El sangrado 25</default>
    </edit>
    <edit left-margin="25" right-margin="25">
      <variable>EDITOR2</variable>
      <width>350</width><height>50</height>
      <default>Margen izquierdo y derecho a 25</default>
    </edit>
    <edit cursor-visible="false">
      <variable>EDITOR2</variable>
      <width>350</width><height>50</height>
      <default>cursor no visible</default>
    </edit>
    <hbox>
      <button cancel></button>
      <button ok></button>
    </hbox>
</vbox>
'

gtkdialog --program=MAIN_DIALOG
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Fri 01 Aug 2014, 16:37    Post subject: Otro excelente post de don570  

Otro excelente post de don570 de como crear botones con svg:

http://murga-linux.com/puppy/viewtopic.php?p=732632#732632
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sat 02 Aug 2014, 07:34    Post subject: Incrustando imagenes en un formulario.  

Para incrustar una imagen en un formulario lo podemos hacer con pixmap.

La imagen segun este ejemplo debe estar en el mismo lugar que el script:

#! /bin/bash
Code:

export MAIN_DIALOG='
<vbox>
  <frame Incrustar imagen>
    <pixmap>
      <input file>2.jpg</input>
    </pixmap>
  </frame>
  <hbox>
    <button cancel></button>
    <button ok></button>
  </hbox>
</vbox>
'
gtkdialog --program=MAIN_DIALOG

Y aqui va el script y la imagen.
pixmap.tar.gz
Description 
gz

 Download 
Filename  pixmap.tar.gz 
Filesize  21.96 KB 
Downloaded  47 Time(s) 
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sat 02 Aug 2014, 12:05    Post subject: Un gif dentro de un pixmap  

Me puse a pensar como introducir un gif dentro de un pixmap y he encontrado esta forma.

Seguramente cualquiera encuentra la forma de mejorarlo asi que si lo consigue, seria bueno que lo pusiera aqui.

Para ejecutar el programa descomprimir la carpeta pixmap_gif, introducirse dentro de ella y ejecutar ./pixmap_gif

De cualquier forma esto abre el camino a una serie de cosas que quiero hacer.

saludos.
pixmax_gif.tar.gz
Description 
gz

 Download 
Filename  pixmax_gif.tar.gz 
Filesize  19.01 KB 
Downloaded  51 Time(s) 
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
mister_electronico


Joined: 20 Jan 2008
Posts: 680
Location: Asturias_ España

PostPosted: Sat 02 Aug 2014, 12:09    Post subject: No olvidar  

No olvidar que si no se ejecuta dar permisos de ejecucion a pixmap_gif y a script_01 .

Saludos.
Back to top
View user's profile Send private message Visit poster's website Yahoo Messenger 
Display posts from previous:   Sort by:   
Page 2 of 4 [50 Posts]   Goto page: Previous 1, 2, 3, 4 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » House Training » Users ( For the regulars ) » Usuarios de habla Hispana
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1074s ][ Queries: 12 (0.0087s) ][ GZIP on ]