Pergunta

Se alguém quiser desenvolver uma interface de usuário em Python, qual a ir para:? TkInter ou PyQt

Eu só comecei com TkInter e eu era capaz de obter algumas UIs simples indo com widgets elementares como rótulo, botão, caixa de texto etc. Apenas curioso para saber como boa PyQt iria ser comparado a TkInter?

aplausos

Foi útil?

Solução

PyQt se você está desenvolvendo nada de grave, especialmente porque as coisas que você aprende irá traduzir diretamente para o trabalho com Qt em outros idiomas também se você precisar, e Qt é provavelmente a melhor cross-plataforma de interface kit de ferramentas disponíveis no momento.

Existem apenas dois (potenciais) desvantagens reais:

PyQt só está disponível sob a GPL. Isto significa que se você liberar seu código, ele tem que ser disponibilizado sob uma licença compatível, nos termos do o Nokia GPL Exceção , ou sob uma licença comercial (que custa dinheiro). Isso está em contraste com Qt, que agora está disponível sob a LGPL.

PyQt não é incluído por padrão com instalações do Python. Você vai ter para embalar a biblioteca si mesmo. (Ars Technica tem um bom artigo em fazê-lo para Windows e OS X).

Outras dicas

PyQt é o nosso principal conjunto de ferramentas GUI agora e depois de 1 ano de desenvolvimento Eu não quero voltar para qualquer outra coisa. É estável, maduro, multi-plataforma e completamente nativa. Até mesmo as caixas de diálogo do sistema (por exemplo, para abrir arquivos) são os usados ??por seu sistema operacional.

I beliscado meu tema XP e agora minha pele aplicativos em conformidade. Isso cria uma aparência muito profissional, não é comparável com um kit de ferramentas como Swing. A API é extensa e vai além das coisas GUI puros como widgets. Ele tem suporte para conectividade de banco de dados, imprimir, rosqueamento (eu usei ele e ele funciona como um encanto), ... Eu até usá-lo para gerar (sem outros libs externos necessário) do PDF. Eu recomendaria o livro de Mark Summerfield embora ' Rápido GUI Programação com Python e Qt ' para chegar na velocidade . Tenha em mente que Qt vem com um construtor de GUI (Qt designer) que é o melhor que tenho usado (e eu tentei muitos deles).
I até mesmo usar este construtor para criar maquetes para mostrar aos usuários (é isso! Fácil).

Eu introduzi-lo para 2 outros desenvolvedores aqui e não ouvi-los reclamando ...

Eu estou usando tkinter para pequenas aplicações com interface simples. Eu gosto muito dele, mesmo que a falta de uma boa WYSIWYG editor pode ser um problema para uma maior aplicação.

Para grandes aplicações, PyQt pode ser uma escolha melhor. Tem um muito bom designer tela, mas o licenciamento pode ser um problema.

Finalmente, wxPython pode ser uma boa alternativa, porque ele não tem esses inconvenientes.

PyQt é realmente fácil de aprender e docs para Qt também funciona para PyQt também existem portas para .NET e Java. Assim, é de fadas multiplataforma e linguagens. Além disso você tem PyQt integrado no Eric IDE .

O suporte para estilos CSS também é realmente brilhante.

Veja novo instalador OpenSuSE para ver o que você pode fazer com ele.

Você pode criar GUIs enormes usando Tkinter. Se você gosta de experimentar o módulo pytkgen que ajuda a criar Tkinter GUI da partir de definições JSON: https://github.com/tmetsch/pytkgen

Eu uso PyQt -. Cruz-plataforma, fácil de trabalhar com e confiável

TkInter muito leve e eu não posso encontrar um ponto de fazer tkinter melhor então PyQt.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top