PROGRESSBAR PAR CONTROLE ACTIVEX

suoe Messages postés 10 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 13 mars 2004 - 21 avril 2003 à 19:58
cs_cyrille Messages postés 47 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 17 février 2006 - 22 avril 2003 à 12:07
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/6804-progressbar-par-controle-activex

cs_cyrille Messages postés 47 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 17 février 2006
22 avril 2003 à 12:07
Bonjour messieurs,

Réponse à SupraDolph : Quelles fonctions ? L'ActiveX peut être amélioré ! eh bien, je t'en prie, y'a rien de compliqué, fais le!

Réponse à Renfield : Ca me plait pas, tu crois ? Mais pas du tout, j'analyse tes critiques avec attention. Pour info : j'ai pensé à des options pour cet ActiveX que tu n'as même pas évoqué. De grâce messieurs, j'ai codé ça en très peu de temps et pour passer 2 heures relax, pas pour autre chose.

Salutations,

Cyrille.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
21 avril 2003 à 22:26
tant pis si ca te plait pas , il est vrai que tu as sans doute l'impression sans doute cherché a condenser au maximum, mais c'est probablement comme ca que je l'aurait encodé !

mon algo fonctionne ainsi:
- a un moment donné ( ici , au Resize .... ) , je definit la couleur des Shapes ( tu pourrait le mettre en dur , en mode edition , vu que c'est pas parametrable....... )
- Ensuite , si je modifie la propriété Value , je masque ou affiche les shapes , en fonction de la valeur en question

ton code est très ( trop) vaste , et repetitif , les mises a jour doivent pas etre aisées.... plutôt que de repeter X fois un bout de code , place une fonction , de sorte que celle ci puisse être reutilisée. Par la suite, les modifications que tu pourra y apporter modifieront d'un coup la totalité du comportement de l'appli ( enfin , de ce qui y fait appel )

ajouter des lignes de code , c'est bien beau , mais a la longue , on en prend l'habitude , et le jour ou tu aura besoin d'un programme rapide et optimisé......( tu peux bien sur me repondre que c'est pas grave , que tu bosses sur un Athlon 2GhZ , mais bon , il vaut mieux optimiser , c'est plus pro... )

par contre , on ne peut se servir des propriétés de ton controle... regarde les modifications que j'ai apportées..

enfin , pour reprendre le commentaires de SupraDolph , ton composant n'est absolument pas parametrable....

Quant a savoir si d'autres codent de cette facon , je t'avouerais que je n'en sais rien , mes progs fonctionnent , et je fais de mon mieux.... personne jusque la ne s'en est plein ( mes profs , au debut, mais je me suis adapté )......

mais je ne suis pas la pour te casser du sucre sur le dos , je dis cela avant tout pour t'aider, défendre mon point de vue...... et placer ici un (des) commentaires constructifs, mais continue les Ocx , perso , j'adore faire ca !

le tout n'est pas de pondre un algo qui fonctionne , la magie de la programmation , et sa richesse surtout , c'est la multitude de voies qu'il est possible pour aller d'un point A à un point B , reste a choisir le plus court , ou le moins pénible , a toi de voir....
SupraDolph Messages postés 196 Date d'inscription samedi 12 janvier 2002 Statut Membre Dernière intervention 1 septembre 2008 1
21 avril 2003 à 21:32
Même remarque que Renfield ton code n'est pas facile a lire et avec tout ces espaces on a du mal à differentier les fonctions.

Sinon les commaentaires sont bien mis quoi qu'un peut repétitif mais sa c'est pas grave.

Je trouve dommage :
- que l'on ne puisse pas règler les dimmentions de ton contrôle activx car dans un projet ton activx n'est pas exploitable.
- que l'on ne puisse pas déterminer le nombre de rectangles
- que l'on ne puisse pas changer les trois couleurs.

en bref : continue ta source car un peut de travail dessus et elle sera bien.

Bonne Prog.
SupraDolph
cs_cyrille Messages postés 47 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 17 février 2006
21 avril 2003 à 20:39
Salut,

A regarder comme ça rapidement, ta modification est probablement tres bonne mais bon, personne ne code de la même manière. Je code d'une façon la plus simple possible. J'aime mieux ajouter des lignes de code que de faire qq chose de dense et d'ilisible, c'est si facile à faire un code dense et ilisible.

Pour finir, tu dois bien être la première personne et j'en ai rencontré des développeurs, qui me dit que mon code est dur à lire.

Néamoins, ta critique est très constructive, c'est pas si souvent ici et c'est dommage.

Salutations à toi,

Cyrille.
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
21 avril 2003 à 20:26
tiens , j'ai refais le code du composant :

Option Explicit

Private myValue As Integer

Private Sub UserControl_Resize()
Dim a As Integer
Height = 4695
Width = 195
For a = 0 To 14
SetColor a
Next
End Sub

Private Sub SetColor(Index As Integer)
Dim Color As Long
If Index <= 7 Then
Color = &HC00&
ElseIf Index > 7 And Index <= 11 Then
Color = &H80FF&
ElseIf Index > 11 Then
Color = &HFF&
End If
Shape1(Index).BackColor = Color
End Sub

Public Property Let Value(ByVal new_Value As Integer)
Dim a As Integer
myValue = new_Value
For a = 14 To myValue Step -1
Shape1(a).Visible = False
Next a
For a = 0 To myValue
Shape1(a).Visible = True
Next a
End Property

Public Property Get Value() As Integer
Value = myValue
End Property
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
21 avril 2003 à 20:25
ton code est plutot complexe pour ce que ca fait , enfin , tu te complique la vie : pourquoi stocker a,b,c et d a l'exterieur des composants ??
progressbar.value = progressbar.value + 1

d'autre part , tu pourrais faire le test ( > 15 ) a l'interieur du composants.

on ne peut pas parametrer le composant ( Min , Max , Couleur ? )

a par ca , le look est sympa !

le code est dur a lire , en tout cas , a cause du nombre de lignes sautées , et du fait que tu n'indente ( ajout de tabulations ) pas ton code..........
suoe Messages postés 10 Date d'inscription lundi 3 février 2003 Statut Membre Dernière intervention 13 mars 2004
21 avril 2003 à 19:58
Salut !
Il es beau !
Merci pour la capture d'écran !
Dommage j'ai pas vb on me la volé zut zut zut et rezut !
Rejoignez-nous