Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

IceBrain

Renderer HTML e CSS

Mensagens Recomendadas

IceBrain

Boas!

Eu estou a começar um pequeno programa em que quero mostrar numa janela algum conteúdo HTML com CSS (pode ser embutido), e receber keystrokes de volta para o programa. Essa vai ser a única janela do programa, por isso não tenho nenhum Toolkit gráfico preferido.

Visto que é suposto o conteúdo ser dinâmico, gostava que a biblioteca/toolkit tivesse uma API decente para mexer na DOM directamente desde Python.

Espero que tenham boas sugestões ;)


❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xeo

algo como isto:

# -*- coding: utf-8 -*-
import sys

from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *


__version__ = '0.0.1'

class Browser(QDialog):
    def __init__(self, website,  parent = None):
        super(Browser,  self).__init__(parent)
        self.resize(1024, 800)
        siteUrl = QUrl(website)

        self.browserWebView = QWebView(self)        
        #browserWebView.setGeometry(0, 0, 799, 399)
        self.browserWebView.load(siteUrl)
        layout = QVBoxLayout()
        layout.addWidget(self.browserWebView)
        self.setLayout(layout)



def main():
    app = QApplication(sys.argv)
    form = Browser('http://www.portugal-a-programar.pt/forums/topic/0-find-topic/?do=findComment&comment=312102')
    form.show()
    app.exec_()


if __name__ == '__main__':
    main()

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
IceBrain

E para receber eventos (keys), é fácil? É que o que li sobre python e webkit dizia que se tinha que escrever Javascript para capturar e depois copiar para o título, e depois lia-se do título em Python, pareceu-me muito messy.

Bem, vou ler a API e logo vejo. Obrigado pela sugestão e código de exemplo :)

EDIT: Já percebi, é só fazer uma subclasse da QWebView e redefinir o método keyPressEvent(). Nice, é muito simples ;)


❝The idea that I can be presented with a problem, set out to logically solve it with the tools at hand, and wind up with a program that could not be legally used because someone else followed the same logical steps some years ago and filed for a patent on it is horrifying.❞- John Carmack on software patents

A list  of command line apps

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
xeo

É muito facil trabalhar com Qt e python, só temos de ler a documentação e muita ainda está direcionada para C++, mas é facil de entender.

Qt rulez

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.