Discussion:
[Python-es] Metawidgets para tkinter (Segunda Parte)
unknown
2002-10-08 12:54:05 UTC
Permalink
Hola, a todos:

Como nadie ha respondido a mi mensaje anterior, supongo yo que nadie ha mirado las extensiones del Tkinter. Aún así os cuento mis averiguaciones por si sirven a alguien en el futuro:

El TIX es una extensión del tkinter que parece que empezará a venir con la instalación del Python. He comprobado que la instalación python para linux incluye el TIX, pero no la de windows. Se pueden coger los fuentes del TIX y compilarlos para windows, pero lo mejor es instalar los binarios que vienen con "tixapps" ó el "IDEStudio" (al final pongo las URLs) que instala tix en python.

"IDEStudio" es un entorno basado en el idle.py que está bastante bien. Como complento ideal está el "SpecTIX", un diseñador visual de interfaces basado en el SpecTCL que puede generar código python para tkinter/TIX. Estas aplicaciones utilizan el framework "tixapps", que incluye alguna utilidad para tcl/tk que puede ser útil en python.

Lo anodino de la instalación de binarios de estas utilidades es que cada una instala su propio python, tcl, tk y tix, lo que hace que ocupen mucho espacio en disco. Supongo que se podría conseguir que todas usaran una única instalación de estas herramientas; pero no tengo tiempo para mirarlo ahora. Al menos el IDEStudio, al estar programado en python, se puede "adelgazar" elimando todo excepto el código fuente en python.

TIX:
http://tix.sourceforge.net

Tix Integrated Development Environment (TIDE):
http://starship.python.net/crew/mike/src/index.shtml

Tix extensions widgets (de la documentación python):
http://www.python.org/doc/lib/module-Tix.html

Python Tix User Guide:
http://tix.sourceforge.net/dist/current/docs/html/TixUser/TixUser.html

Hybrid Programming using Python and Tix:
http://tix.sourceforge.net/pdf/pytix.pdf


En el mensaje anterior hablé del PythonCard. La cosa es que no es para tkinter, como pensaba. Es para wxPython, e incluye algunas herramientas muy interesantes, sobre todo el editor de recursos.

PythonCard (aka pycard):
http://pythoncard.sourceforge.net


A parte de esto, he estado mirando el SQLite como base de datos ligera. Está programado en C, y es bastante más rápida que gadfly. Mi intención es utilizar SQLite como formato de intercambio de datos entre diferentes entornos y bases de datos empresariales. Las pruebas que he realizado me han dado buenos resultados:

SQLite:
http://www.sqlite.org

PySQLite:
http://pysqlite.sourceforge.net


Saludos,
--
Chema Cortes (chemacortes en wanadoo.es)
_____________________________________________________________________
Horas ilimitadas para leer y enviar correos con Tarifa Plana Wanadoo
¡¡ desde las 3 de la tarde!!
Compruébalo en http://www.wanadoo.es/acceso-internet
unknown
2002-10-08 13:42:05 UTC
Permalink
Post by unknown
He comprobado que la instalación python para linux incluye el TIX, pero no la de windows.
Es un "bug" de la instalación de python para windows que ya está informado:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=474836&group_id=5470

Está previsto que se solucione en la versión 2.3 (la versión 2.2.2 que sale la semana que viene sigue sin instalar el tix para windows). Para los que quieran añadir TIX al python para windows, se pueden descagar los binarios de: http://www.informatik.hu-berlin.de/~loewis/python/tix813win.zip

Saludos,
--
Chema Cortes (chemacortes en wanadoo.es)
_____________________________________________________________________
Horas ilimitadas para leer y enviar correos con Tarifa Plana Wanadoo
¡¡ desde las 3 de la tarde!!
Compruébalo en http://www.wanadoo.es/acceso-internet
unknown
2002-10-09 01:53:04 UTC
Permalink
Ultimamente he dejado Tk por eso de andar tras el GTK# pero gracias por
la informacion, es mas, deberias de publicarlo como new en algun portal
--
/kmilo
unknown
2002-10-10 08:22:40 UTC
Permalink
Post by unknown
Ultimamente he dejado Tk por eso de andar tras el GTK# pero gracias por
la informacion, es mas, deberias de publicarlo como new en algun portal
En realidad no he descartado nada, aunque preciso que funcione tanto en windows como en linux. Quería usar el tkinter/tix por ser lo que viene con python ("bateries included"); pero visto los fallos del Tix en windows estoy pensando en pasarme a wx.

En cuanto a lo de ponerlo en algún sítio, estoy elaborando una relación de frameworks, sus entornos de desarrollo, utilidades, documentación y algunos consejos. Cuando acaben las fiestas del Pilar lo pongo en algún sitio :-)


Saludos,
--
Chema Cortes (chemacortes en wanadoo.es)
_____________________________________________________________________
Horas ilimitadas para leer y enviar correos con Tarifa Plana Wanadoo
¡¡ desde las 3 de la tarde!!
Compruébalo en http://www.wanadoo.es/acceso-internet
unknown
2002-10-10 19:56:54 UTC
Permalink
Hola Chema,

yo estoy en el mismo punto que tú. Tengo que elegir alguna GUI para hacer
algo.
He estado tonteando un poco con wxPython, pero igual que a ti te ha pasado
con Tix hay errores. El desarrollo es un poco pesado porque cuando peta
se puede quedar colgado tu entorno de desarrollo (si arrancas desde allí
tu programa, parece que siempre es conveniente arrancar la apliacación
en una instancia separada, lo que dificulta la depuración.) He visto que
wx ha mejorado, pero parece que la estrategia de tests no es suficientemente
completa.
Hice un pequeño ScrollWindow para situar un conjunto de controles mediante
los
archivos de recursos (.XRC) y para que desplazando el cursos adaptara la
posición de
scroll para que el campo que tuviese el foco siempre fuera visible.

Nunca he trabajado a un nivel tan bajo, y la verdad es que me cuesta. Me
gustaría utilizar el Grid control que todavía tiene algunos errores. Un
grid, si funciona bien, me parece una manera muy buena de representar
información, además de ser ágil como control de entrada.

Cuando me he metido un poco más con wx, he visto que requiere bastante
esfuerzo para conocer las cosas internas, incluso de hacer modificaciones
sobre el código en C y recompilarlo. La verdad es que no quería bajar tanto
de nivel.

Me gustaría que comentaras un poco los errores que has encontrado en Tix.
Me atrae un poco más, porque va a pertenecer a Python en futuro, y parece
que tiene un desarrollo un poco menos masivo pero más controlado que wx.

Por último, dado que me gustaría migrar a Web, me parece interesante
estudiar la posibilidad de hacer una pura interfaz Web. La disposición
automática de las capas y el texto según tamaño de fuentes es muy
interesante, lo que no cabe en horizontal se dispone automáticamente en
vertical, y esto en combinación con un ratón con rueda puede ser bastante
ágil. (Se puede usar 'notebooks' o lengüetas, adicionalmente, como lo hace
Zope, para separar contenidos.)
El problema es que no está tan directamente ligado a Python, ya que la
interfaz hay que programarlo en JavaScript, pero se puede colocar un mínimo
que después conecte a un servidor Python que haga gran parte de interacción.
El contenido de las páginas puede refrescarse dinámicamente sin tener que
recargar todo el texto, mediante dhtml. Para que eso sea compatible con
ambos navegadores mayoritarios (IE+NS,Mozilla) puede usarse DynApi II
(dynapi.sourceforge.net ) .

En fin, hay un sinfin de posibilidades pero ninguna parece óptima. Dime si
te decides por alguna, entonces yo elijo otra y comparamos. (Estoy entre
Tix, wx y DynApi).

Saludos, Erny
unknown
2002-10-11 00:45:57 UTC
Permalink
Hola a todos.
Post by unknown
Por último, dado que me gustaría migrar a Web, me parece interesante
estudiar la posibilidad de hacer una pura interfaz Web. La disposición
automática de las capas y el texto según tamaño de fuentes es muy
interesante, lo que no cabe en horizontal se dispone automáticamente en
vertical, y esto en combinación con un ratón con rueda puede ser bastante
ágil. (Se puede usar 'notebooks' o lengüetas, adicionalmente, como lo hace
Zope, para separar contenidos.)
El problema es que no está tan directamente ligado a Python, ya que la
interfaz hay que programarlo en JavaScript, pero se puede colocar un mínimo
que después conecte a un servidor Python que haga gran parte de interacción.
El contenido de las páginas puede refrescarse dinámicamente sin tener que
recargar todo el texto, mediante dhtml. Para que eso sea compatible con
ambos navegadores mayoritarios (IE+NS,Mozilla) puede usarse DynApi II
(dynapi.sourceforge.net ) .
Para la interfaz, lo más cómodo y completo en web que he encontrado es XUL
(www.xulplanet.com). Sólo funciona con navegadores con motores mozilla, pero
personalmente que le ... por .... al iexplorer (siempre que el cliente
firme, por supuesto). Se define la interfaz con xml, muy cómodo de usar,
definir y con un resultado muy elegante para mi gusto, además de que cada
cliente puede escoger el skin que le de más coraje.

Otra posibilidad que estudié hace poco es thinlet (www.thinlet.com), una
clase de aproximadamente 5000 líneas de código, que sí es portable, ya que
funciona como applet, pero me pareció engorroso y lento y aún no domino java
(el principal motivo para abandonar), aunque estoy en ello ;-).

Zalu2.
unknown
2002-10-11 01:20:30 UTC
Permalink
Hola a todos, es la tercera vez que intento escribir esta respuesta con el
windows de los ...
Post by unknown
Por último, dado que me gustaría migrar a Web, me parece interesante
estudiar la posibilidad de hacer una pura interfaz Web. La disposición
automática de las capas y el texto según tamaño de fuentes es muy
interesante, lo que no cabe en horizontal se dispone automáticamente en
vertical, y esto en combinación con un ratón con rueda puede ser bastante
ágil. (Se puede usar 'notebooks' o lengüetas, adicionalmente, como lo hace
Zope, para separar contenidos.)
El problema es que no está tan directamente ligado a Python, ya que la
interfaz hay que programarlo en JavaScript, pero se puede colocar un mínimo
que después conecte a un servidor Python que haga gran parte de interacción.
El contenido de las páginas puede refrescarse dinámicamente sin tener que
recargar todo el texto, mediante dhtml. Para que eso sea compatible con
ambos navegadores mayoritarios (IE+NS,Mozilla) puede usarse DynApi II
(dynapi.sourceforge.net ) .
¿Conocéis XUL (www.xulplanet.com) o thinlet (www.thinlet.com)?

XUL define interfaces en xml y funciona en navegadores con motores mozilla
(lo uso actualmente).
Thinlet es un applet que facilita la creación de interfaces (la alternativa
al anterior que desestimé).

Zalu2
unknown
2002-10-14 21:16:21 UTC
Permalink
Asunto: [Python-es] Metawidgets para tkinter (Segunda Parte)
Fecha: mar, oct 08, 2002 at 01:54:05 +0100
Post by unknown
El TIX es una extensión del tkinter que parece que empezará a venir con la instalación del Python. He comprobado que la instalación python para linux incluye el TIX, pero no la de windows. Se pueden coger los fuentes del TIX y compilarlos para windows, pero lo mejor es instalar los binarios que vienen con "tixapps" ó el "IDEStudio" (al final pongo las URLs) que instala tix en python.
"IDEStudio" es un entorno basado en el idle.py que está bastante bien. Como complento ideal está el "SpecTIX", un diseñador visual de interfaces basado en el SpecTCL que puede generar código python para tkinter/TIX. Estas aplicaciones utilizan el framework "tixapps", que incluye alguna utilidad para tcl/tk que puede ser útil en python.
Lo anodino de la instalación de binarios de estas utilidades es que cada una instala su propio python, tcl, tk y tix, lo que hace que ocupen mucho espacio en disco. Supongo que se podría conseguir que todas usaran una única instalación de estas herramientas; pero no tengo tiempo para mirarlo ahora. Al menos el IDEStudio, al estar programado en python, se puede "adelgazar" elimando todo excepto el código fuente en python.
http://tix.sourceforge.net
http://starship.python.net/crew/mike/src/index.shtml
http://www.python.org/doc/lib/module-Tix.html
http://tix.sourceforge.net/dist/current/docs/html/TixUser/TixUser.html
http://tix.sourceforge.net/pdf/pytix.pdf
En el mensaje anterior hablé del PythonCard. La cosa es que no es para tkinter, como pensaba. Es para wxPython, e incluye algunas herramientas muy interesantes, sobre todo el editor de recursos.
http://pythoncard.sourceforge.net
http://www.sqlite.org
http://pysqlite.sourceforge.net
Muy interesante recopilación de recursos. Si la instalación del entorno completo
es tan importante, no sería mejor pensar en otro tipo de arquitectura de
aplicación (tipo cgi o servidor de aplicaciones)?? Supongo que ya lo habrás
estudiado bien, pero es algo que se me venía ocurriendo.

Saludos

Luis Miguel
unknown
2002-10-15 10:09:10 UTC
Permalink
Post by unknown
Muy interesante recopilación de recursos. Si la instalación del entorno completo
es tan importante, no sería mejor pensar en otro tipo de arquitectura de
aplicación (tipo cgi o servidor de aplicaciones)?? Supongo que ya lo habrás
estudiado bien, pero es algo que se me venía ocurriendo.
Sí que lo había estudiado. En un mensaje anterior (ya no recuerdo cuándo; aún no tengo todas las neuronas en funcionamiento después de estas fiestas :-) comenté que pensaba utilizar "slither" (http://slither.sf.net), o sea, cgis python para apache. Mi problema estriba en que me enfrento con la falta de "cultura informática" de la administración pública donde acabo de integrarme, donde no se entiende el sentido de tener un ordenador dedicado exclusivamente a dar servicio a la red.

Te explico un poco mi "estudio" del problema: mi intención final es pasar poco a poco todas las aplicaciones que se encuentran distribuídas e inconexas, a un entorno integrado basado en agentes de red programados en python. Puede que lo mejor fuera java/jython para realizar estos agentes, pero como todavía requiero de win32com para trabajar con documentos de MsOffice, al final utilizaré python (C-python). No necesito gran cosa para el interface gráfico de los agentes de red, por lo que Tkinter/TIX me sobra. A través de estos agentes, las aplicaciones serán cada vez más dependientes de un servidor de red, dando paso a aplicaciones de red más orientadas a intranet/internet.

Podría haberlo intentado con VB y ASP, pero no me daba la confianza suficiente.


Saludos,
--
Chema Cortes (chemacortes en wanadoo.es)
_____________________________________________________________________
Horas ilimitadas para leer y enviar correos con Tarifa Plana Wanadoo
¡¡ desde las 3 de la tarde!!
Compruébalo en http://www.wanadoo.es/acceso-internet
Loading...