chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 2007
-
24 août 2006 à 14:03
tservolle
Messages postés28Date d'inscriptionmardi 7 mars 2006StatutMembreDernière intervention22 janvier 2007
-
17 oct. 2006 à 11:58
Bonjour,
J' ai un Label UserControl dont la seule fonction est de s' ouvrir et
de se refermer en jouant sur sa propriété "Height".J' ai choisi un Label
pour avoir une transparence.
J' ai défini la propriété ControlContainer de cet UserControl à True de
façon à y placer d' autres contôls : essentiellement des Labels.Ainsi
lorsqu' il se ferme, ces derniers ne sont plus visibles (sorte de menu déroulant)
Jusque là tout va bien.
Le problème c' est que je suis obligé de cliquer deux fois pour éxecuter la procédure Label(x)_Click. Je suppose que lors du premier Click, c' est le UserControl qui prend le Focus. Les Labels ne possédant pas de Focus,
je ne peux alors pas jouer sur ça. Et je ne veux pas d' autres choses que des Labels.
Comment contourner ce problème...? Je compte sur vous...
Merci.
A voir également:
The projects in the reactor contain a cyclic reference:
Julien237
Messages postés883Date d'inscriptionvendredi 3 novembre 2000StatutMembreDernière intervention 3 mars 20097 24 août 2006 à 14:30
Ca devient du luxe, mais tu peux essayer d'intercepter le clic avec des API puis de vérifier s'il est dans le cadre de ton Label...
Le frame ne peut pas être transparent ?
(Ou bien alors une picture box dans laquelle tu peints manuellement le fond du form pour faire comme si elle était transparente... Mais je sais pas si une picture box solutionnerait ton prob...)
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 24 août 2006 à 14:53
salut,
frame transparent -> non. (sauf composants form2.0 mais non redistribuables)
pourquoi ne pas gérer l'évènement du click du usercontrol directement et voir ensuite selon les x y si/quel label s'y trouve?
++
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 24 août 2006 à 15:32
le for each est là pour çà... pas besoin de savoir combien de labels tu as pour savoir leur existance et position
de plus, rien ne t'empêche d'avoir un tableau de ces dimensions si besoin. tu peux même alors directement écrire sur le usercontrol et de passer des labels... (à voir avec la transparence si çà ne poste pas de problème...)
ps : réponse acceptée, c'est normalement pour le/les posts qui te donnent une réponse. mais bon ^^
++
<hr size="2" width="100%" />Prenez un instant pour répondre à ce sondage svp
Vous n’avez pas trouvé la réponse que vous recherchez ?
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 24 août 2006 à 14:46
Merci tout d' abord d' avoir répondu aussi vite,
^^Le frame ne peut pas être transparent ?
Est-ce possible ?
^^(Ou bien alors une picture box dans laquelle tu peints manuellement le fond du form pour faire comme si elle était transparente.
J' ai en effet un fond mais avec une image.Et donc je dois découper la partie correspondante à l' emplacement ou se placera ma PictureBoxContainer et placer cette partie découpée dans celle-ci.
Le problème c' est que peux être amené à ajouter d' autres labels dans cette PictureBox ou même changer son emplacement et donc je dois refaire le découpage.
En tout cas cette solution reste envisageable.et ça ne me coutera rien de redécouper
une fois le "menu" terminé.
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 24 août 2006 à 15:12
Justement,
Je ne sais pas d' avance combien j' aurais de Labels (Items) dans mon
Pseudo-Menu.C' est varible selon les sous éléments dans le même prog et selon les
progs.Car je compte bien le réutiser à la fois dans la même source et dans plusieures autre. Et je ne veux pas à chaque fois "réinventer la roue!"
En ce qui concerne Form2, tu as raison de le souligner. Il vaut mieux l' éviter.
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 24 août 2006 à 17:07
Voilà, je vous expose ma synthèse.
Je crée mon UserControl
J' insére un Maximum de Labels indexés qui serveront d' items.
La caption de ceux qui constituront mon "Menu" serait indiquée.
Pour les autres, une chaine vides.
Mon UserControl aurait une Methode qui retourne l' index
du label sur lequel se produit le Click.
Dans mon programme , je récupère cet index et je défini l' action à
entreprendre selon sa valeur
Exemple :
X=MonUserControl.SelectedLabel
Select case X
..........
..........
..........
EndSelect
La hauteur Maximale du UserControl serait limitée par (le top du dernier
label dont la caption est différente de "") + (sa hauteur)+(quelques Twips).
Je ne sais pas ce que vous en pensez, mais moi je fonce ...
Si vous avez quelques choses à me suggerer dans ce sens
ça serait bien...