Personal Website

My Web: MindEchoes.com

Sunday, September 12, 2010

Navegador Web en menos de 100 Lineas de Codigo! C++

Ya había hecho un POST hace un tiempo sobre como programar un Navegador Web bastante completo en algo así como 63 lineas de código usando Python y PyQt. Y ahora quería mostrar como programar ese mismo Navegador pero en C++ usando Qt.

Las funcionalidades del Navegador son:
  • Navegar por las paginas de forma tradicional
  • Muestra una barra de progreso para poder ver como se va cargando la página
  • Posee boton para cargar la página anterior
  • Boton para ir a la siguiente página
  • Boton recargar la página actual
  • Boton para parar la carga de la página actual
  • Y en la barra de direcciones podemos escribir una url, o tambien escribir simplemente las palabras que estamos buscando y nos realiza automaticamente la busqueda en Google (al mejor estilo Chrome)
  • Dar el foco a la Barra de Direcciones con "Alt+D"
  • Javascript soportado
Screenshots:




Si bien son más lineas que la versión del mismo navegador en Python, la diferencia es muy poca, y si solo miran la parte de la lógica del programa, dejando de lado el header, etc. Van a poder ver que el código es prácticamente idéntico... La Magia de Qt!

Para bajar el código se encuentra en: Browser-C++
Se descargan esos cuatro archivos y estando ubicados en la carpeta del proyecto hacemos:
$ qmake
$ make

y para ejecutar:
$ ./Browser

(Obviamente hay que tener instalado Qt, el ejemplo fue hecho con la versión 4.6)

Para que puedan comparar la parte de la lógica y ver que el código es prácticamente el mismo:

11 comments:

kikorb said...

Jode!

La primera vez que lo he leido el post no he caido en que lo has hecho tú!

Asombroso, jeje.

La boda genial, gracias por acordarte y ya de nuevo con ganas de hacer cosas en WB. De momento 2020 usuarios y creciendo a 10-20 al día.

Ya te iré contando más cosas, a ver si termina javiyu la api para subir ficheros y redondeamos las aplicaciones para escritorio.

Despues la imaginacion al poder. Mira lo que hicieron los de MegaUpload con MegaVideo... quién sabe si por ahí se puede explotar también. Potencial hay y sabemos que podemos hacerlo.

Un abrazo sincero.

Jose Manuel said...

Me Puedes Dar Los Codigos Para Dev c++

Diego Sarmentero said...

Acá esta el proyecto completo:

http://wingedbox.com/downloads/6524-cpp-browser.zip

Jose Manuel said...

Tengo Un Error Me Ayudas Diego Sarmentero veras Asi Es El Error:
'(x)': include"browser.h"

'(x)' = Error Falta = Me Sale En La Principal Pagina Del Proyecto = moc_browser.cpp(Ahi Me Sale El Error Unicamente, En browser.cpp No Me Sale)

Diego Sarmentero said...

Que sistema operativo tenes?
Tenes Qt instalado?

yo simplemente abro la consola en la carpeta donde esta el proyecto y ejecuto:

$ qmake
$ make

y se crea el ejecutable: Browser
y listo.

jeremy S said...

que masa que es Qt!!!

esto si es "poder de resumen"
muy bueno!!

:D

jita said...

Hola, muy bueno!!!
Tengo una pregunta. ¿Me podrías pasar los enlaces que usaste para aprender a programar en Qt con C++? Me serían muy muy útiles y te estaría enormemente agradecido. Llevo 2 meses intentando aprender a usarlo leyendo manuales a dar y tomar y no hay manera.
Mi correo electrónico es nofinjoo@hotmail.es
Un saludo!

Diego Sarmentero said...

Lo único que use, fue la documentación oficial de Qt

La Mariposa Azul said...

Hola amigo re genial tu proyecto, te pregunto me puedes mandar el proyecto completo, es que no lo he podido ver por que no me aparece el UI qt gracias !!

La Mariposa Azul said...

Hola amigo re genial tu proyecto, te pregunto me puedes mandar el proyecto completo, es que no lo he podido ver por que no me aparece el UI qt gracias !!

Diego Sarmentero said...

En el post figura el link al codigo