Graphiques
 
- Dégradé
- Animations BitBlt
- Animations Pic
- Contrôle Animation
- Défilement d'image
 
Interface
 
- Barre d'outils
- Barre de progression
- Clignotement
- Interface MDI
- Barre d'état
 
Texte & système
 
- Texte sur image
- Taille variable
- Informations système
 
Fichiers
 
- Grand fichier
- Choix de police
- Dictionnaire Word
- Listes
- Fichiers binaires
 
Souris et touches
 
- Curseur animé
- Touches
 

Mon navigateur Web personnalisé -Programmation (4)
  1. Voici la dernière feuille à compléter: F_interface.  Nous allons d'abord lui ajouter une procédure de type FORM_LOAD afin d'initialiser la page de départ.

Private Sub Form_Load()
   Page_départ = "http:\\www.esls.net"  
'Adresse par défaut pour la page web
   'Chargement de la page (trim enlève les espaces au début et à la fin)
   Nav_1.Navigate Trim(Page_départ)
   BP_1.Visible = False  
'Cache la barre de progression
End Sub

  1. Nous allons lui ajoute les procédure en rapport avec le navigateur.

'Procédure précédant la navigation elle-même
Private Sub Nav_1_BeforeNavigate2(ByVal pDisp As Object, URL As Variant,
-->
Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers
-->
As Variant, Cancel As Boolean)
  
'Affichage d'un message dans la barre d'état
   MDI_Navigateur.BE_1(1).SimpleText = "Recherche et chargement ..."
  
'Affichage du sablier comme pointeur de souris
   Screen.MousePointer = vbHourglass
End Sub

'Procédure quand le chargement commence
Private Sub Nav_1_DownloadBegin()
   BP_1.Visible = True    
'Barre de progression visible
  
'Affichage d'un message dans la barre d'état
   MDI_Navigateur.BE_1(1).SimpleText = "Recherche et chargement ..."
   
'Affichage du sablier comme pointeur de souris
   Screen.MousePointer = vbHourglass
End Sub

'Procédure quand le chargement est complété
Private Sub Nav_1_DownloadComplete()
  
'Affichage d'un message dans la barre d'état
   MDI_Navigateur.BE_1(1).SimpleText = "Chargement complété"
   Screen.MousePointer = vbDefault 
'Retour du pointeur par défaut
   V_item = CO_1.ListCount  
'Initialisation de V_item au nombre d'éléments de la liste
   If Nav_1.LocationURL <> V_chaine Then 
'Si la page est différente de V_Chaine
      CO_1.List(V_item) = Nav_1.LocationURL  
'Inscription de l'adresse dans la liste
   End If
   V_chaine = Nav_1.LocationURL  
'Initialisation de V_Chaine
   CO_1.Text = Nav_1.LocationURL
'Inscription de l'adresse dans la barre d'adresses
   BP_1.Visible = False  
'Barre de progression invisible
End Sub

'Quand on quitte le navigateur
Private Sub Nav_1_OnQuit()
   Unload F_Interface  
'Déchargement de la feuille
   End   'Fin du programme
End Sub

'Afficher l'état du chargement de la page
Private Sub Nav_1_ProgressChange(ByVal Progress As Long, ByVal
--> ProgressMax As Long)
   On Error Resume Next 
'Passer à l'instruction suivante en cas d'erreur
   BP_1.Max = ProgressMax  
'Initialisation du maximum de la barre de progression
   BP_1.Value = Progress  
'Initialisation de la valeur de la barre de progression
End Sub

'Changement du titre de la fenêtre
Private Sub Nav_1_TitleChange(ByVal Text As String)
   F_Interface.Caption = Text 
'Changement du CAPTION de F_interface. Celui-ci -->
   s'écrit à côté de celui de MDI_Navigateur

End Sub

  1. Les prochaines procédures serviront à réagir aux événements qui surviennent dans le combo CO_1.

'Chargement de la page sélectionnée quand on clique sur Co_1
Private Sub CO_1_Click()
   Dim V_adresse As String 
  'Déclaration de variable
   V_adresse = CO_1.Text  
'Initialisation de variable
   F_Interface.CO_1.Text = V_adresse  
'initialisation de la propriété TEXT de CO_1
   F_Interface.Nav_1.Navigate V_adresse  
'Ouverture de la page
End Sub

'Chargement de la page quand on presse Entrée
Private Sub CO_1_KeyDown(KeyCode As Integer, Shift As Integer)
   If KeyCode = vbKeyReturn Then  
'Si la touche pressée est Entrée
      Call BO_Va_Click  
'Appeler la procédure BO_VA_Click
   End If
End Sub

  1. La procédure précédente fait appel à BO_Va_Click. Nous allons donc placer cette procédure dans le bouton du même nom.

Private Sub BO_Va_Click()
   If (CO_1.Text = "") Then  
'Si la zone est vide
      MsgBox "Adresse invalide..Essayez à nouveau.", vbCritical,
-->
      "ADRESSE INVALIDE" 
'Message d'erreur
      Nav_1.Navigate "about:blank"  
'Affiche une page vide dans le navigateur
      CO_1.Text = ""  
'Vide le texte de la liste
      CO_1.SetFocus  
'Redonne le focus à la liste
   Else  
'Sinon
      Nav_1.Navigate Trim(CO_1.Text)  
'Affiche la page désirée
   End If
End Sub

  1. Plus qu'une procédure et l'application sera terminée. Celle-ci est intégrée dans la barre d'outils OU_1

Private Sub OU_1_ButtonClick(ByVal Button As MSComctlLib.Button)
   Select Case Button.Index  
'Sélection en fonction de l'index du bouton cliqué
      Case 1
         On Error GoTo Erreur 
  'Capture d'erreur
         Nav_1.GoBack  
'Passer à la page précédente
Erreur:
   If err.Number = 80004005 Then  
'Procédure de traitement d'erreur
      err.Clear
   End If
      Case 2
         On Error GoTo Erreur1 
'Capture d'erreur
         Nav_1.GoForward 
  'Passer à la page suivante
Erreur1:

 
  If err.Number = 80004005 Then   'Procédure de traitement d'erreur
      err.Clear
   End If
      Case 3
         Nav_1.Stop   
'Arrêt du téléchargement
      Case 4
         Nav_1.Refresh  
'Rafraîchissement de la page
      Case 5
         On Error GoTo err 
  'Capture d'erreur
         F_Interface.Nav_1.GoHome   
'Retour à la page d'accueil
err:
   err.Clear 
'Vide la variable Err
      Case 6
         Nav_1.SetFocus  
'Donne le focus au navigateur
         F_Interface.Nav_1.ExecWB OLECMDID_SELECTALL,
-->
         OLECMDEXECOPT_PROMPTUSER  
'Tout sélectionner
      Case 7
         Nav_1.Navigate "http:\\www.toile.qc.ca"  
'Recherche sur la toile du Québec
      Case 8
         F_Html.Show  
'Montrer la source de la page
      Case 9
        
'Utilisation d'Outlook pour lire les messages
         Shell "C:\Program Files\Outlook Express\MSIMN.EXE", vbNormalFocus
      Case 10
         F_EnvoiCourriel.Show  
'Envoyer un courriel par la feuille intégrée
      Case 11
         Dim V_Ip As String  
'Déclaration de variable
         V_Ip = F_Interface.Winsock1.LocalIP  
'Lire l'adresse IP
         F_Interface.ZT_Informations.Text = "Adresse IP: " & V_Ip 
'Afficher l'adresse IP
      Case 12
         Dim V_nom As String 
  'Déclaration de variable
         V_nom = Winsock1.LocalHostName  
'Lire le nom de l'ordinateur
         F_Interface.ZT_Informations.Text = "Nom du PC: " & V_nom 
'Afficher le-->
         nom de l'ordinateur

      Case 13
         Affiche_Liens  
'Appel de la procédure permettant d'afficher les liens
      Case 14
         Shell ("rundll32.exe shell32.dll,Control_RunDLL inetcpl.cpl,,0")  
'Affiche la -->
         fenêtre des propriétés

      Case 15
         Sortie  
'Appel de la procédure de sortie
   End Select
End Sub

  1. Voilà qui complète la création de votre navigateur. Sauvegardez le tout et testez votre programme. Apportez les corrections nécessaires, s'il y a lieu.

Application:

  • Que diriez-vous d'ajouter votre chat comme option au navigateur. On doit pouvoir y accéder par l'intermédiaire du menu ou d'un bouton. Diminuez les zones de texte au besoin.  Sauvegardez le nouveau programme sous le nom Ex_27bxx.vbp.
Création d'aide
 
- À propos
- Astuce du jour
 
Cryptage
 
- Mot de passe
- Cryptage de fichier
 
Base de données
 
- Bibliothèque
 
Winsock
 
- Serveur de chat
- Client de chat 1
- Client de chat 2
 
Jeu d'arcade
 
- Interface
- Programmation 1
- Programmation 2
- Programmation 3
- Programmation 4
 
Navigateur WEB
 
- Interface 1
- Interface 2
- Interface 3
- Interface 4
- Programmation 1
- Programmation 2
- Programmation 3
- Programmation 4
 
© Copyright 2002 - Design : Webmasters-fr.net