wxPython, uma biblioteca GUI multi-plataforma (parte 1)

Esta é a primeira parte de uma série de artigos que irá apresentar a você esta poderosa ferramenta Open Source para a criação de interfaces gráficas para programas escritos em Python. Neste artigo foi abordado uma apresentação do que é o wxPython, a instalação em vários Sistemas Operacionais e uma simples aplicação "Olá Mundo!".

[ Hits: 37.175 ]

Por: Matheus Santana Lima em 01/06/2007


Instalação



Linux

Red Hat:

Você pode procurar os RPMs para Red Hat no endereço (eles estão funcionando bem com Fedora, Mandriva e Mandrake):
Debian:

WxPython pode ser instalado com o apt-get digitando como root:

# apt-get install python-wxgtk2.4
ou
# apt-get install python-wxgtk2.6

Dependendo da versão que você deseja o pacote com os demos do wxPython estão em um pacote wx-examples, que pode ser instalado com:

# apt-get install wx2.4-examples
ou
# apt-get install wx2.6-examples

Uma vez instalado você precisa copiar /usr/share/doc/wx2.[4|6]-examples/examples/wxPython para um diretório que você possa editar. Você precisa descompactar o arquivo comprimido. Você pode fazer isso com este simples script:

for i in *.gz; do
    gunzip $i
done

Você pode rodar os demos digitando:

$ python demo.py

Gentoo:

WxPython pode ser instalado com o portage digitando:

# emerge wxpython

Ubuntu:

Este é um conjunto de pacotes mantido por um time do wxPython para o Ubuntu 6.06 (Dapper Drake) para sistemas baseados em i386, é sabido que se está funcionando bem também no Ubuntu 6.10 (Edgy Eft). Você pode obtê-los adicionando as seguintes linhas no seu /etc/apt/sources.list:

# wxPython APT repository at wxcommunity.com
deb http://wxpython.wxcommunity.com/apt/ubuntu/dapper /
deb-src http://wxpython.wxcommunity.com/apt/ubuntu/dapper /

Depois de adicionar as informações dos repositórios em /etc/apt/sources.list , você pode buscar e instalar os pacotes usando um gerenciador de pacote gráfico como o Synaptic ou o Adept, ou ainda rodando os seguintes comandos abaixo em uma janela de terminal:

$ sudo apt-get update
$ sudo apt-get install python-wxgtk2.8 python-wxtools wx2.8-i18n


Estes pacotes (e suas dependências) podem vir a substituir mais cedo versões do wxPython e do wxGTK em algumas séries de lançamentos que possam vir a serem instaladas previamente.

Microsoft Windows:

A instalação no Windows é simples, execute o instalador que você pegar em:
e siga as instruções.

Construindo pelo source:

Você pode querer instalar o wxPython pelo source. Para fazer isto siga estes três passos:

Instalando o Python:

Você já deve ter feito isso. Use o site do Python para ter alguma referência a mais de instalação, provavelmente sua distribuição já traz incluso o Python.
Instalando o wxGTK:

wxGTK é a versão do GTK para wxWidgets. GTK (Gimp ToolKit) é uma biblioteca gráfica usada pelo Gnome, mas provavelmente está instalada na sua distribuição Linux. Tudo que você tem que fazer é baixar o source do wxGTK do site:
Ou do site do wxWidgets:
Descompacte o wxGTKcom o comando:

$ tar -zxvf wxGTK-2.2.5.tar.gz

Vá para o diretório:

$ cd wxGTK-2.2.5

Rode o script configure:

$ ./configure --with-gtk

Você pode receber alguns erros aqui se o GTK não foi instalado ou se os arquivos incluídos para o GTK não foram instalados (no Mandrake, gtk+-devel-1.2.8-6mdk.i586.rpm é um rpm que você tem que instalar).

Rode o arquivo:

$ make

Você pode obter alguns erros aqui também se o yacc ou o lex não estiverem instalados (no Mandrake os RPMs corretos são byacc-1.9-7mdk.i586.rpm e flex-2.5.4a-13mdk.i586.rpm).

Você deve compilar uma versão para o wxGTK. Para instalar logue-se como super-usuário(root):

$ su

Sua senha do root é necessária aqui.

Instalando o wxGTK:

# make install

Linkando a biblioteca:

# ldconfig

Normalente, wxGTK é instalado, mas pode vir a ocorrer algum problema com o wxPython.

Isto é possível quando a biblioteca não é instalada enquanto o wxPython espera por isto (no Mandrake 7.2 você deve instalar o wxGTK no arquivo /usr/lib, sendo que automaticamente ele instala em /usr/local/lib). A solução para isso é a criação de um link simbólico para a biblioteca, você deve fazer isto:

Vá para o diretório aonde você quer que a biblioteca seja instalada:

# cd /usr/lib

Criando um link simbólico para a biblioteca:

# ln -s /usr/local/lib/libwx_gtk.so

Instalando o wxPython:

Faça o download da última versão do wxPython em:
Descompacte o tarball:

$ tar -xvzf wxPython-2.2.5.tar.gz

Vá para o diretório:

$ cd wxPython-2.2.5

Edite o setup.py para escolher o que você quer instalar. Sugiro que você não instale o OGL e o GL_CANVAS. Por seleção:
BUILD_GLCANVAS = 0 # If true, build the contrib/glcanvas extension module
BUILD_OGL = 0      # If true, build the contrib/ogl extension module
BUILD_STC = 1      # If true, build the contrib/stc extension module
CORE_ONLY = 0      # if true, don't build any of the above
GL_ONLY = 0        # Only used when making the -gl RPM.  See the "b" script
                   # for the ugly details
USE_SWIG = 0       # Should we actually execute SWIG, or just use the
                   # files already in the distribution?
IN_CVS_TREE = 0    # Set to true if building in a full wxWindows CVS
                   # tree, otherwise will assume all needed files are
                   # available in the wxPython source distribution

Construindo o módulo python:

$ python setup.py build

Antes logue-se como root:

$ su

Sua senha do root é necessária aqui.

Instale o módulo:

# python setup.py install

Saia do modo root:

# exit

Cheque se o módulo funciona:

$ python
Python 1.5.2 (#1, Sep 30 2000, 18:08:36) [GCC 2.95.3 19991030 (prerelease)] on linux-i386
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
>>> import wx
>>>

O wxPython deve estar funcionando!

Mac OS X:

Você deve primeiro seguir as instruções descritas aqui:
Um howto em francês pode ser encontrado em:
Página anterior     Próxima página

Páginas do artigo
   1. Getting Started
   2. Instalação
   3. Uma aplicação "Olá Mundo!"
Outros artigos deste autor

VNC + Hamachi

Linux, 100% compatível!

Manipulação de arquivos em C++

Freeduc - Educação escolar é com Linux!

Apresentando e pondo a prova o Mono

Leitura recomendada

Aprenda Python - Guia "rápido"

FreeBSD + Zope/Plone, uma idéia frustrante?

Escreva poemas com a sua linguagem de programação

Instalação Plone 2.5.5 com módulos customizados

Criando formulários no Zope/Plone utilizando o banco de dados MySQL

  
Comentários
[1] Comentário enviado por GabrielBAP em 02/06/2007 - 11:32h

cara... legal esse artigo, gostei!
vlws!

[2] Comentário enviado por fgueira em 17/05/2008 - 09:45h

Quando vc diz "[2] É quase tão velha quanto Tkinter - com data anterior a 1990" quer dizer com isso é trabalhar com o mesmo pode ser um problema ?

[3] Comentário enviado por matheusslima em 17/05/2008 - 15:31h

Absolutamente nao
o unix eh mais velho que o windows e mesmo assim o unix eh melhor.

[4] Comentário enviado por fgueira em 18/05/2008 - 09:16h

Só mais uma dúvida ... estou precisando desenvolver um projeto mas não sei se utilizo o wxpython ou o pyqt ... qual a sua opinião sobre ambos ....

[5] Comentário enviado por matheusslima em 18/05/2008 - 23:19h

Olha sobre o pyqt eu nao tenho opniao,pq nunca usei, mas o wxpython eu gostei e tive um resultado muito bom com ele e recomendo.

abracos
Matheus


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts