FlaPer87 - import freedom; print everything

  • galería de imagenes
  • presentaciones
  • proyectos
  • copyright
  • contacto
  • acerca de...
Home

Google Adsense

Navigation

  • Recent posts

User login

  • Request new password

Toaster popups en Python usando la libreria ToasterBox (Windows)

Submitted by flaper87 on Sat, 12/23/2006 - 18:43.

Saludos para todos!!!

Me encontraba realizando un programa el cual tenia que lanzar una serie de alertas o avisos en un momento especifico, y se me ocurrio la idea de hacer que esos avisos fuesen estilo "Toaster" popup (este estilo de aviso, es una ventanita que usualmente aparece en la esquina inferior derecha del monitor, como las del MSN), para elo un amigo me recomendo una libreria llamada ToasterBox la cual fue escrita utilizando wxwidgets y te permite crear ese estilo de avisos, bien sea de manera simple o compleja. En la forma simple, se muestra el aviso con el texto seleccionado( "El hecho de que sea simple no significa que no sea configurable"). En la forma compleja, se podran incluir widgets, como botones, Tickers, Checkboxes entre otros.

En este post les explico la forma de asignar la posicion en la que tiene que aparecer este aviso, ya que fue donde me complique un poco y porque si explico todo el post sera bastante largo :). En mi caso yo creia que apareciera justo donde aparecen los del MSN, pero para ello, no podia asignarle los valores directamente, explico:

Si yo le asignaba los valores directamente hubiese sido algo asi:

tb = TB.ToasterBox(self, tbstyle, windowstyle, closingstyle)
posx = int(1070)
posy= int(648)
tb.SetPossition((posx,posy))

De esa manera hubiesen aparecido donde yo queria pero solo en mi monitor, ya que los valores se los habia asignado de acuerdo a la resolucion de mi monitor. Entonces para poder que en cualquier monitor este aviso apareciera en la esquina inferior derecha, nesecitaba obtener las medidas del area de trabajo del monitor en el que la aplicacion estaba corriendo. El Area de trabajo, es todo el espacio del escritorio, excluyedo la barra del menu inicio(Taskbar), y cualquier otra barra de herramientas que pueda tener el usuario. Para obtener las medidas de esta hice uso de las propiedades de wxpython:

tb = TB.ToasterBox(self, tbstyle, windowstyle, closingstyle)
sizex = Ancho del aviso
sizey = Altura del aviso
posx = wx.GetClientDisplayRect().GetWidth()-sizex
posy = wx.GetClientDisplayRect().GetHeight()-sizey
tb.SetPopupPosition((posx,posy))

Lo que hice fue tomar las medidas del area de trabajo individualmente con la propiedad GetClientDisplayRect() de wxpython y restarles las medidas del aviso, para que este pudiese aparecer en la posicion deseada.;)

Recuerden que esta libreria es altamente configurable, por lo tanto depende de ustedes como estara configurada. Les dejo el link[1] para que puedan descargar esta libreria si es de su interes(Viene con un Demo de ejemplo).

[1]ToasterBox

  • Python

Oye Flavio es Hector el pana

Submitted by Hector (not verified) on Thu, 01/18/2007 - 23:56.

Oye Flavio es Hector el pana que estuvo en la reunion de gorra azul.

oye donde hiciste el curso de python y cual es la comparacion de visual estudio con el mismo. yo he escuchado sobre python pero no sabia donde daban los cursos y hoy revisando tu blog me di cuenta que sabes donde dan los cursos si puedes enviarme la informacion de donde los imparten te lo agradeceria.

un saludo espero que hagamos buena amistad y compartamos conocimientos .

Hector Davila

  • reply

Hola Hector!!! El curso lo

Submitted by flaper87 (not verified) on Fri, 01/19/2007 - 00:59.

Hola Hector!!!

El curso lo hice en meritec, tiene dos sucursales, una en el C.C Plaza Las Americas, y otra arriba en fundacite. Hasta donde tengo entendido, que el proximo curso es el 3 y 4 de marzo, y realmente te lo recomiendo 100%. Ahora bien, hablando de python; en mi opinion es un lenguaje de programacion maravilloso, como hablamos hoy, es un lenguaje de programacion multiplataforma, pero a su ves posee otras caracteristicas importantes como son, el hecho de que es interpretado a diferencia de lenguajes como C++ , lo cual te ahorra gran cantidad de tiempo en el desarrollo puesto que no necesitas compilar ni enlazar, otra caracteristica importante es que este lenguaje es dinamicamente tipado, lo que quiero decir con esto es que simplemente no necesitas indicarle que tipo de variable estas asignando(int, string, float etc), el automaticamente es capaz de detectarla, lo cual te ahorra mucho codigo. A comparacion con lenguajes de programacion como los de visual studio, python es uno de los lenguajes que menos codigo genera, gracias a su facilidad de uso. Posee un campo de desarrollo amplio, con el puedes desarrollar juegos, Interfaces, Aplicaciones que interactuen con el S.O, puede ser usado en Inteligencia Artificial entre otros. Estos son puntos importantes en lo que es la apreciacion de este lenguaje, de todas formas te dejo links para que puedas leer más, sino el comment sera kilometrico. :) De igual manera, seguiremos hablando de este punto interesante. ;)

http://es.wikipedia.org/wiki/Python

http://www.python.org/

Por otro lado, por supuesto que haremos buena amistad (eso ni lo dudes), y se que en la curiosidad que mencionastes hoy descubriras muchas cosas grandiosas del software libre. :)

flaper87

  • reply

Post new comment

The content of this field is kept private and will not be shown publicly.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Lines and paragraphs break automatically.

More information about formatting options

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
8 + 3 =
Solve this simple math problem and enter the result. E.g. for 1+3, enter 4.

Search

  • a11y-en
  • a11y-es
  • Anuncios
  • ArchLinux
  • curiosidades
  • Debian
  • Docbook
  • Drupal
  • English
  • Enlightenment
  • Español
  • Eventos
  • GNU/Linux
  • Italiano
  • Latex
  • mouseTrap
  • opencv
  • Poesias
  • Python
  • Reflexiones
  • Subversion
  • Tiflotecnología
  • Ubuntu
  • Uncategorized
  • Web
  • wordpress

Twitter Updates

Twitter Logo

    follow me on Twitter



    • galería de imagenes
    • presentaciones
    • proyectos
    • copyright
    • contacto
    • acerca de...