MENU FIREFOX

Messages postés
185
Date d'inscription
vendredi 20 décembre 2002
Statut
Membre
Dernière intervention
10 janvier 2008
- - Dernière réponse : Flocreate
Messages postés
307
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 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.

https://codes-sources.commentcamarche.net/source/30088-menu-firefox

Afficher la suite 
Flocreate
Messages postés
307
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 mai 2012
3 -
Flocreate
Messages postés
307
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 mai 2012
3 -
mistake, j'ai inversé Source et destination dans les les 2 fonctions de transfer ^^
Flocreate
Messages postés
307
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 mai 2012
3 -
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és
307
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 mai 2012
3 -
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és
307
Date d'inscription
lundi 17 juillet 2006
Statut
Membre
Dernière intervention
27 mai 2012
3 -
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.