Petit ocx de ping en forme de compteur de vitesse

Soyez le premier à donner votre avis sur cette source.

Vue 8 526 fois - Téléchargée 3 160 fois

Description

Ceci est un petit OCX (le premier que j'ai fait, il est vraiment tout simple) qui ajoute un composant en forme de compteur de vitesse, une icône de 32x32 pixel et qui indique la vitesse de ping d'une machine distante.
Je me sers d'un module "Ping" qui n'est pas de moi, je l'ai trouvé ici il y a longtemps et l'auteur est "KPD-Team 2000" (http://www.allapi.net/) merci à lui.
Si l'on dimentionne l'icône un peu plus haute, on peut également faire apparaître le nom de la machine distante.
Remarque: J'aurais pu faire bouger l'aiguille par trigo, mais le positionnement n'était pas super esthétique alors j'ai préféré définir moi-même le positionnement de cette aiguille.
Comme la réponse de ping peut aller jusqu'à 2 secondes, j'ai mis le timer à 2.5 secondes.
Les principales propriétés sont "Resultat", "Reponse", "BackColor", "Enabled", "Etat" et "Machine"
La propriété "Machine" est l'adresse IP (ou dns) de la machine à pinger
La propriété "Resultat" renvoie le délai en millisecondes ou le temps d'inactivité
La propriété "Réponse" renvoie True ou False si la machine distante réponds on non
La propriété "Etat", si elle est "Vide" enlève la petite LED en bas à droite, sinon elle devient vert si ok, rouge si pas ok et jaune si c'est à nouveau bon après interruption. Pour la remettre vert, on peut, par exemple, remettre cette propriété "Vert" par le code suivant:

Private Sub BoardPing1_Click()
BoardPing1.Etat = Vert
End Sub

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
371
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
17 juin 2013

Désolé, mais la notation ne fonctionne pas, attendons que Nix réparre...

Bonne prg,
@+ JLN
Messages postés
371
Date d'inscription
samedi 1 juin 2002
Statut
Membre
Dernière intervention
17 juin 2013

Puisque tu es dans les modifs, pourrais-tu donner le choix de la taille sur le même principe que les led ca pourrai permettre de l'utiliser pour d'autres appli que celle pour laquelle tu as concu cet ocx... Quoi qu'il en soit je met 10 d'encouragement...

Bonne prog,
@+ JLN
Messages postés
13
Date d'inscription
dimanche 29 décembre 2002
Statut
Membre
Dernière intervention
13 avril 2006

Okay, merci à NHenry pour ses conseils.

Il y a maintenant la propriété "Etat" qui contient 4 valeures:
Vert
Jaune
Rouge
Vide
... et non plus la propriété "LED" qui était un string.

Super ce site. Comme qui disait: "La connaissance ne progresse que si elle est partagée"...
Messages postés
13
Date d'inscription
dimanche 29 décembre 2002
Statut
Membre
Dernière intervention
13 avril 2006

Génial, merci!
Messages postés
14827
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
23 octobre 2021
157
à la place d'utiliser :
CtlLed.Etat="Vert", "Rouge","Orange"

tu peux faire
Dans un module public :
public Enum ELedEtat
Vert
Orange
Rouge
End Enum

Puis dans ton controle :
private mEtat as ELedEtat

Public Property Get Etat () as ELedEtat
Etat=mEtat
End Property Set

Public Property Let Etat (byval Value as ELedEtat)
mEtat=Value
End Property Set

Ce la présente l'avantage de pouvoir éviter les fautes de frappes ("Vret") si Option Explicit est activé.

De plus tu n'a plus besoin de faire attention à la casse ("Vert", "VERT","vert")

et si tu fais un Select Case, cela génère un code plus lisible.
Afficher les 14 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.