' Programmé par Nicolas T. 'PetitFurby'
' Site web : http://www.Rapid-Q.tk
'------------------------------------------
'On va apprendre à programmer un navigateur internet... 
'Bon ne sautez pas au plafond lol c'est facile, car on va utilisez
'le moteur d'Internet Explorer. Donc si vous n'avez pas IE,
'montrez moi le message d'erreur SVP (Pour voir ce que ça donne... :-D)
'Bon allé c'est parti !!!




'**********************************************************
'**********************************************************



'on declare les subs, comme d'hab'.
DECLARE SUB CoolBtn1Click (Sender AS QCOOLBTN)'on clic sur le bouton précédent
DECLARE SUB CoolBtn2Click (Sender AS QCOOLBTN)'on clic sur le bouton suivant
DECLARE SUB CoolBtn3Click (Sender AS QCOOLBTN)'on clic sur le bouton stop
DECLARE SUB CoolBtn4Click (Sender AS QCOOLBTN)'on clic sur le bouton rafraichir
DECLARE SUB CoolBtn5Click 'on clic sur le bouton GO
DECLARE SUB CoolBtn6Click 'on clic sur le bouton recherche Google
DECLARE SUB quit 'on quitte le navigateur
DECLARE SUB resize 'on change la taille du navigateur
DECLARE SUB show 'lors de l'affichage de la fenêtre
DECLARE SUB Timergo 'la sub qui va afficher toute les secondes les infos grace au timer
CREATE Timer1 AS QTIMER 'creation du timer
interval = 1000 'chaque seconde
ontimer = timergo 'aller a la sub timergo
END CREATE 'fin de creation
CREATE Form AS QFORM 'création de la fenêtre (nommée form) 
Caption = "Navigateur en Rapid-Q" 'Titre de la fenêtre
Width = 565 'largeur initiale
Height = 452'hauteur initiale 
Center 'centrée sur l'écran
onresize = resize 'lorsque la taille de la fenetre change, aller a la sub resize
onclose = quit 'lorsque l'on quitte le navigateur, aller a la sub quit
autoscroll = 0 'ne pas affichier de barre de défilement si la fenetre est trop petite
onshow = show 'lors du lancement aller a la sub "show"
CREATE CoolBtn1 AS QCOOLBTN 'création du bouton précédent (nommé coolbtn1)
Caption = "<<" '<< affiché sur le bouton
Left = 0 '0px par rapport a la gauche de la fenetre
Top = 0 '0px par rapport au haut de la fenetre
Width = 39 'largeur
Height = 38 'hauteur
Flat = 1 'type de bouton "flat"
OnClick = CoolBtn1Click 'lorsque l'on clic dessus, aller a la sub CoolBtn1Click
END CREATE 'fin de création du bouton
CREATE CoolBtn2 AS QCOOLBTN 'création du bouton suivant (nommé coolbtn2)
caption = ">>" '>> affiché sur le bouton 
Left = 40 '40px par rapport a la gauche de la fenetre
Top = 0'0px par rapport au haut de la fenetre
Width = 39'largeur
Height = 38'hauteur
Flat = 1'type de bouton "flat"
OnClick = CoolBtn2Click'lorsque l'on clic dessus, aller a la sub CoolBtn2Click
END CREATE'fin de création du bouton
CREATE CoolBtn3 AS QCOOLBTN'création du bouton top (nommé coolbtn3)
Caption = "S" 'S affiché sur le bouton (Stop)
Left = 80'80px par rapport a la gauche de la fenetre
Top = 0'0px par rapport au haut de la fenetre
Width = 39'largeur
Height = 38'hauteur
Flat = 1'type de bouton "flat"
OnClick = CoolBtn3Click'lorsque l'on clic dessus, aller a la sub CoolBtn3Click
END CREATE'fin de création du bouton
CREATE CoolBtn4 AS QCOOLBTN'création du bouton rafraichir (nommé coolbtn4)
Caption = "R" 'R affiché sur le bouton (rafraichir)
Left = 120'120px par rapport a la gauche de la fenetre
Top = 0'0px par rapport au haut de la fenetre
Width = 39'largeur
Height = 38'hauteur
Flat = 1'type de bouton "flat"
OnClick = CoolBtn4Click'lorsque l'on clic dessus, aller a la sub CoolBtn4Click
END CREATE'fin de création du bouton
CREATE CoolBtn5 AS QCOOLBTN'création du bouton go (nommé coolbtn5)
Caption = "GO"'GO affiché sur le bouton
Left = 347 '347px par rapport a la gauche de la fenetre
Top = 8'8px par rapport au haut de la fenetre
Width = 25'largeur
Height = 20'hauteur
Flat = 1'type de bouton "flat"
OnClick = CoolBtn5Click 'lorsque l'on clic dessus, aller a la sub CoolBtn5Click
END CREATE'fin de création du bouton
CREATE CoolBtn6 AS QCOOLBTN'création du bouton google (nommé coolbtn6)
Caption = "Google"'Google affiché sur le bouton
Left = 507'507px par rapport a la gauche de la fenetre
Top = 8'8px par rapport au haut de la fenetre
Width = 47'largeur
Height = 20'hauteur
Flat = 1'type de bouton "flat"
OnClick = CoolBtn6Click 'lorsque l'on clic dessus, aller a la sub CoolBtn6Click
END CREATE'fin de création du bouton
CREATE ComboBox1 AS QCOMBOBOX 'création d la barre d'adresse (nommée combobox1)
Text = "http://www.Rapid-Q.tk" 'elle contient initialement l'adresse de mon site
Left = 168'168px par rapport a la gauche de la fenetre
Top = 8'8px par rapport au haut de la fenetre
Width = 177'largeur
END CREATE ' fin de création
CREATE StatusBar1 AS QSTATUSBAR 'création de la barre de statut
SimplePanel = 1 'barre de type simple
SimpleText = "Mon navigateur" 'texte affiché initialement
END CREATE 'fin de création
CREATE ComboBox2 AS QCOMBOBOX 'création de la barre de recherche
Text = "Rapid-Q.tk" 'contient rapid-q.tk
Left = 384 '384px par rapport a la gauche de la fenetre
Top = 8'8px par rapport au haut de la fenetre
Width = 121'121px de largeur
END CREATE'fin de création de la barre de recherche
CREATE Explorer AS QOLECONTAINER 'on créé le qolecontainer qui va accueillir le navigateur
Top=50 '50px du haut de la fenetre
Width=560 '560px de largeur
Height = 400 '400px de hauteur
END CREATE 'fin de création
END CREATE'fin de création de la fenetre




IF Form.SHOWMODAL THEN 'afficher la fenetre. Bon c'est comme ca, c'est bizarre, mais ca évite
Form.Close 'les fenetres d'erreurs. (Solution trouvée sur guidance).
END IF 




SUB CoolBtn1Click (Sender AS QCOOLBTN)'sub page précédente
explorer.goback 'aller a la page précédente
END SUB 'fin de la sub



SUB CoolBtn2Click (Sender AS QCOOLBTN)'sub page suivante
explorer.goforward 'aller a la page suivante
END SUB'fin de la sub



SUB CoolBtn3Click (Sender AS QCOOLBTN)'sub arreter
explorer.stop 'on arrete l'explorateur
END SUB'fin de la sub



SUB CoolBtn4Click (Sender AS QCOOLBTN)'sub rafraichir
explorer.refresh 'on rafraichi l'explorateur
END SUB'fin de la sub



SUB CoolBtn5Click 'sub aller a cette adresse
explorer.CreateObject("Shell.Explorer.1") 'on créé un explorateur
Explorer.Navigate(combobox1.text) 'et on va sur la page de la barre d'adresse (c'est donc tout simple )
combobox1.additems combobox1.text 'on ajoute a la site le site que l'on vient de voir
END SUB'fin de la sub



SUB CoolBtn6Click 'sub chercher avec google
explorer.CreateObject("Shell.Explorer.1") 'on créé un explorateur
Explorer.Navigate("http://www.google.fr/search?q="+combobox2.text) 'on va sur la page de google avec comme recherche le texte de la barre de recherche
END SUB 'fin de la sub



SUB quit 'sub quitter le navigateur
if explorer.occured then 'si le navigateur est occupé,
explorer.free 'on libere le navigateur pour eviter un plantage
end if 'fin de la condition
END SUB 'fin de la sub



SUB resize 'sub changer la taille du navigateur
coolbtn6.left = form.width-coolbtn6.width-15'afficher le bouton google à 15px par rapport a la droite de la fenetre
ComboBox2.width = form.width/5 'largeur de la barre de recherche = largeur de la fenetre/4 
ComboBox2.left = coolbtn6.left-ComboBox2.width-5 'afficher la barre de recherche à 5px a gauche du bouton google
coolbtn5.left = combobox2.left-coolbtn5.width-10 'afficher le bouton GO à 10px a gauche de la barre de recherche
combobox1.width = coolbtn5.left-coolbtn4.left-54 'largeur de la barre d'adresse = ecart entre le bouton Rafraichir et le bouton GO
explorer.width = form.width-7 'regler la largeur de l'explorateur par rapport a celle de la fenetre
explorer.height = form.height-96 'regler la largeur de l'explorateur par rapport a celle de la fenetre
END SUB 'fin de la sub



SUB timergo 'sub qui est appelée toutes les secondes grace au timer1
Statusbar1.simpletext = explorer.locationName 'mettre le nom de la page dans la barre d'etat du navigateur
form.caption = explorer.locationName+ "- Mon navigateur en Rapid-Q" 'titre du navigateur = nom de la page+ "- Mon nav[...]"
END SUB ' fin de la sub



SUB Show
explorer.CreateObject("Shell.Explorer.1") 'on créé un explorateur
Explorer.Navigate(combobox1.text) 'et on va sur mon site... 8-D !
END SUB



'---------------------------------------
'bon voila j'ai mis que l'essentiel, le navigateur est moche mais il fonctionne...
'A vous d'ajouter des beaux boutons, gestion des favoris et pourquoi pas un système d'onglets,un anti pop-up
'un lecteur d'e-mail,un chat IRC, un P2P, un lecteur mp3, etc...? 
'A+ et venez nombreux sur www.Rapid-Q.tk 

