aigledefer1331
Messages postés6Date d'inscriptionmardi 26 octobre 2004StatutMembreDernière intervention19 novembre 2009
-
19 nov. 2009 à 20:19
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 2018
-
19 nov. 2009 à 21:07
Bonjour , escusez moi je vais tacher d'etre clair mais ce n'est pas evident. Je vous expose mon soucis . j'ai tenter de trouver le moyen de donner une semi transparence a une listbox en vb2008 le probleme c'est que apres avoir chercher longtemps je n'ai pas trouver de solution . j'ai donc cree deux form - (exemple form1 et form2)
la form2 se placant derriere la form1 ... dans la form2 j'ai placer la meme image que dans la form1 mais je l'ai modififer de sorte a etre plus clair et plus trouble (effet de semi transparence) j'ai ensuite donner la couleur de la listbox en transparencykey.... j'ai donc l'image de la form2 dans les listbox de la form1 le probleme est que je peu faire en sorte que la form1 suive la form2 mais quand je clique sur une autre application , et que je clique dans la taskbar sur form1 la form2 ne suis pas ..
j'ai tenter je faire suivre la form2 grace a form1_actived par exemple
mais comme la form1 doit revenir devant j'ai donc une boucle sans fin
le meilleur resultat que j'ai obtenu c'est que ca suive mais j'a un tas de clignotement desagreable qui dure 4 seconde a peu pres .
si quelqu'un a une solution d'avance un grand grand merci .
aigledefer1331
Messages postés6Date d'inscriptionmardi 26 octobre 2004StatutMembreDernière intervention19 novembre 2009 19 nov. 2009 à 20:58
j'ai trouver une solution merci ....
je vous explique a celui que ca interresse :
meme proceder que le premier message : ensuite ->
a la place de jouer avec form1_actived et avoir une boucle sans fin je joue avec form2_actived je cache l'icone de la form1 dans la barre des taches et laisse uniquement celui de la form2 en evenement je place : form1.topmost = true
form1.topmost = false
le probleme a ce moment la c'est que je ne peu pas cliquer sur les item de la listbox a cause de leur transparent (a moin de cliquer sur le texte exactement ) j'ai donc rajouter ceci :
Private Sub form2_Activated(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Activated
If MouseButtons.Left Then
Dim s = -1
For Each nitem In detail.ListView1.Items
s = s + 1
Dim haut = detail.ListView1.Items.Item(s).Position.Y
If mousey = haut Then GoTo cluck
If mousey = haut + 1 Then GoTo cluck
If mousey = haut + 2 Then GoTo cluck
If mousey = haut + 3 Then GoTo cluck
If mousey = haut + 4 Then GoTo cluck
If mousey = haut + 5 Then GoTo cluck
If mousey = haut + 6 Then GoTo cluck
If mousey = haut + 7 Then GoTo cluck
If mousey = haut + 8 Then GoTo cluck
If mousey = haut + 9 Then GoTo cluck
If mousey = haut + 10 Then GoTo cluck
If mousey = haut + 11 Then GoTo cluck
If mousey = haut + 12 Then GoTo cluck
If mousey = haut + 13 Then GoTo cluck
If mousey = haut + 14 Then GoTo cluck
If mousey = haut + 15 Then GoTo cluck
If mousey = haut + 16 Then GoTo cluck
If mousey = haut + 17 Then GoTo cluck
If mousey = haut + 18 Then GoTo cluck
If mousey = haut + 19 Then GoTo cluck
If mousey = haut + 20 Then GoTo cluck
If mousey = haut + 21 Then GoTo cluck
If mousey = haut + 22 Then GoTo cluck
If mousey = haut + 23 Then GoTo cluck
If mousey = haut + 24 Then GoTo cluck
If mousey = haut + 25 Then GoTo cluck
If mousey = haut + 26 Then GoTo cluck
If mousey = haut + 27 Then GoTo cluck
If mousey = haut + 28 Then GoTo cluck
If mousey = haut + 29 Then GoTo cluck
If mousey = haut + 30 Then GoTo cluck
If mousey = haut + 31 Then GoTo cluck
If mousey = haut + 32 Then GoTo cluck
GoTo fin
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 19 nov. 2009 à 20:51
salut,
umm, pas sur que ton idée soit des meilleures
doit bien y avoir un moyen propre en vb.net de rendre un contrôle semi-transparent..
bref sinon dans le cas actuel, tu dois subclasser ta form
lors du WM_MOVE (de mémoire) de la form1 (celle du dessous si j'ai bien compris), déplace la form2 (celle qui contient ta listbox) selon la nouvelle position
les mots WINPROC VB.NET devraient te donner quelques exemples