BozzoDodo
Messages postés185Date d'inscriptionvendredi 20 décembre 2002StatutMembreDernière intervention10 janvier 2008
-
21 mars 2005 à 22:29
Flocreate
Messages postés300Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention27 mai 2012
-
5 mai 2010 à 16:56
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Flocreate
Messages postés300Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention27 mai 20123 20 avril 2010 à 10:29
mistake, j'ai inversé Source et destination dans les les 2 fonctions de transfer ^^
Flocreate
Messages postés300Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention27 mai 20123 20 avril 2010 à 10:28
Arf, je viens de comprendre toute cette bidouille archi moche ;(
(Et g aussi trouvé pour le LSet)
En fait on utilise une variable globale pour se passer les infos entre modules
Pour ma part, je préfère (surtout pour un Type ne possédant que 4 attributs) passer par une classe.
on a donc
Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
la Classe
cRECT
Public Left As Long
Public Top As Long
Public Right As Long
Public Bottom As Long
et les deux fonctions dans un module
Public Function R_to_cR(ByRef R As RECT, ByRef cR As cRECT)
R.Bottom = cR.Bottom
R.Left = cR.Left
R.Right = cR.Right
R.Top = cR.Top
End Function
Public Function cR_to_R(ByRef cR As cRECT, ByRef R As RECT)
cR.Bottom = R.Bottom
cR.Left = R.Left
cR.Right = R.Right
cR.Top = R.Top
End Function
ainsi, on peut stoquer les données et se les passer entre classes
et lorsqu'on doit travailler avec les API on fait
Dim tmpR as RECT
Call cR_to_R(cR, tmpR)
Call fncAPI(blabla avec tmpR)
Call R_to_cR(tmpR, cR)
perso je trouve cela vraiment plus propre
si vous connaissez une autre méthode je suis a l'écoute
PS: j'ai corrigé le code et maintenant je peu utiliser pls controls
Flocreate
Messages postés300Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention27 mai 20123 20 avril 2010 à 09:16
je rectifie le post fait précédement,
le problème pour avoir plusieurs MenuFirefox le problème ne viens pas du subclassing mais de l'utilisation "publique" de c_ColMenuFox et peut être de mRectCase
J'ai bien réussi a "privatiser" c_ColMenuFox en l'associant à la classe cDrawMenuFox mais je n'y parviens pas pour mRectCase qui est une structure.
J'ai vu l'emploie de "LSet" un peut partout dans le code. Je n'arrive pas a trouver sa signification sur le Net. Je suis presque sur que la solution viendrait de là.
Saurriez vous m'expliquer le "LSet" ?
Flocreate
Messages postés300Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention27 mai 20123 20 avril 2010 à 07:41
Bonjour,
Vraiment tres bon. (9/10)
Petits bugs :
- la propriété Alligne n'est pas sauvegardée par le composant. Elle se remet à AlignLeft par défaut. (normal ou pas ?)
- impossible d'utiliser plusieur barres de menu (le subclassing ne semble pas savoir rediriger l'évènement. Ajout d'un index unique pourrait-il corriger le problème.
Améliorations envisageables (je travail actuellement dessus)
- Remplacer les cadres rectengulaires par des rectangles arrondis (facil a faire ^^)
- Ajouter une image de fond au menu (+ transparence des boutons dessus)
- Ajouter un mask d'ombre pour les boutons (vraiment accessoir)
- Pouvoir gérer et visualiser les boutons dans l'environnement de debug (sans l'annimation bien sur)
- gérer le mode horizontal
- pouvoir ajouter des séparateur & des espaces entre 2 boutons
encore bravo pour cette source vraiment jolie & fonctionnelle.
nourwahiba
Messages postés82Date d'inscriptionmardi 18 octobre 2005StatutMembreDernière intervention23 juin 2011 11 févr. 2009 à 15:44
BRAVO TRES BIEN FAIT
MERCI
BozzoDodo
Messages postés185Date d'inscriptionvendredi 20 décembre 2002StatutMembreDernière intervention10 janvier 2008 21 mars 2005 à 22:29
j'ai pas tout regardé mais bravo c'est très bien fait!
5 mai 2010 à 16:56
20 avril 2010 à 10:29
20 avril 2010 à 10:28
(Et g aussi trouvé pour le LSet)
En fait on utilise une variable globale pour se passer les infos entre modules
Pour ma part, je préfère (surtout pour un Type ne possédant que 4 attributs) passer par une classe.
on a donc
Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long
End Type
la Classe
cRECT
Public Left As Long
Public Top As Long
Public Right As Long
Public Bottom As Long
et les deux fonctions dans un module
Public Function R_to_cR(ByRef R As RECT, ByRef cR As cRECT)
R.Bottom = cR.Bottom
R.Left = cR.Left
R.Right = cR.Right
R.Top = cR.Top
End Function
Public Function cR_to_R(ByRef cR As cRECT, ByRef R As RECT)
cR.Bottom = R.Bottom
cR.Left = R.Left
cR.Right = R.Right
cR.Top = R.Top
End Function
ainsi, on peut stoquer les données et se les passer entre classes
et lorsqu'on doit travailler avec les API on fait
Dim tmpR as RECT
Call cR_to_R(cR, tmpR)
Call fncAPI(blabla avec tmpR)
Call R_to_cR(tmpR, cR)
perso je trouve cela vraiment plus propre
si vous connaissez une autre méthode je suis a l'écoute
PS: j'ai corrigé le code et maintenant je peu utiliser pls controls
20 avril 2010 à 09:16
le problème pour avoir plusieurs MenuFirefox le problème ne viens pas du subclassing mais de l'utilisation "publique" de c_ColMenuFox et peut être de mRectCase
J'ai bien réussi a "privatiser" c_ColMenuFox en l'associant à la classe cDrawMenuFox mais je n'y parviens pas pour mRectCase qui est une structure.
J'ai vu l'emploie de "LSet" un peut partout dans le code. Je n'arrive pas a trouver sa signification sur le Net. Je suis presque sur que la solution viendrait de là.
Saurriez vous m'expliquer le "LSet" ?
20 avril 2010 à 07:41
Vraiment tres bon. (9/10)
Petits bugs :
- la propriété Alligne n'est pas sauvegardée par le composant. Elle se remet à AlignLeft par défaut. (normal ou pas ?)
- impossible d'utiliser plusieur barres de menu (le subclassing ne semble pas savoir rediriger l'évènement. Ajout d'un index unique pourrait-il corriger le problème.
Améliorations envisageables (je travail actuellement dessus)
- Remplacer les cadres rectengulaires par des rectangles arrondis (facil a faire ^^)
- Ajouter une image de fond au menu (+ transparence des boutons dessus)
- Ajouter un mask d'ombre pour les boutons (vraiment accessoir)
- Pouvoir gérer et visualiser les boutons dans l'environnement de debug (sans l'annimation bien sur)
- gérer le mode horizontal
- pouvoir ajouter des séparateur & des espaces entre 2 boutons
encore bravo pour cette source vraiment jolie & fonctionnelle.
11 févr. 2009 à 15:44
MERCI
21 mars 2005 à 22:29