figo566
Messages postés59Date d'inscriptionmercredi 19 janvier 2005StatutMembreDernière intervention 1 mai 2011
-
6 nov. 2006 à 18:39
figo566
Messages postés59Date d'inscriptionmercredi 19 janvier 2005StatutMembreDernière intervention 1 mai 2011
-
7 nov. 2006 à 06:49
Bonjours, depuis quelques je cherche un problème à mon problème mais je ne trouve pas de réponse donc je me dirige vers vous avec l'espoir que mon problème soit résolut. Voici le problème :
Ma procédure Form_MouseMove ne répond plus, je n'ai pas aux programmes qu'il y a à l'intérieur et je ne c'est pas pourquoi donc si quelqu'un sais comment je peux la mettre "active" je lui en serait reconnaissant
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 7 nov. 2006 à 00:16
Re,
si c'est le SStab1 qui prend trop de place
il suffit de le cacher au moment nécessaire
Private Sub Form_Resize()
If frmServer.WindowState = vbMinimized Then
frmServer.Hide
With nid
.cbSize = Len(nid)
.hWnd = Me.hWnd
.uId = vbNull
.uFlags = NIF_ICON Or NIF_TIP Or NIF_MESSAGE
.uCallBackMessage = WM_MOUSEMOVE
.hIcon = Me.Icon
.szTip = Me.Caption & vbNullChar
End With
Shell_NotifyIcon NIM_ADD, nid
SSTab1.Visible = False
Else
Shell_NotifyIcon NIM_DELETE, nid
End If
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim lmsg As Long
lmsg = x
Select Case lmsg
Case WM_LBUTTONDBLCLK
frmServer.WindowState = vbNormal
frmServer.Show
SSTab1.Visible = True
End Select
End Sub
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 6 nov. 2006 à 18:51
Relis toi.
Si tu te comprends, c'est bien, nous on ne comprends pas (ou alors c'est moi...)
Le problème dans ton texte c'est le mot, bah "problème", répété à maintes reprises, ce qui embrouille la lecture. De plus, je pense que tu dois employer des mots par d'autres !
Si tu pouvais être plus explicite, et n'hésite pas à fournir le code de la procédure qui ne fonctionne pas.
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
cboulas
Messages postés2641Date d'inscriptionmercredi 2 juin 2004StatutMembreDernière intervention 8 janvier 201416 6 nov. 2006 à 18:53
Salut,
Je pense que cela doit venir de l'obtention du focus ce qui te permettrait de récupérer le MouseMove, malheureusement tu risque de ne pas obtenir plus de choses si tu n'a pas accès au code interne
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 6 nov. 2006 à 19:11
Je ne comprends pas vraiment ce que tu appelles par "entrer dans cette procédure".
Tu ne peux pas modifier le code ?
Tu veux l"exécuter pas à pas ?
T'es bien avec Visual Basic 6.0 ?
Sinon, pour ton histoire de double click, regarde avec cet évènement :
Private Sub Form_DblClick()
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
figo566
Messages postés59Date d'inscriptionmercredi 19 janvier 2005StatutMembreDernière intervention 1 mai 2011 6 nov. 2006 à 19:14
ce qui est bizarre c'est que j'ai d'autre programme utilisant le même code et sa marche parfaitement.
Sinon ce programme a pour but de faire revenir en fenetre normal une fenetre qui avait disparut et qui était dans la barre des tâches à côté de l'horloge. Je c'est que l'écriture du code est bon, mais ce que je demande c'est comment rentrer dans ce code, comment l'utiliser ??
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 6 nov. 2006 à 19:18
Si par entrer si entends 'comment faire pour que la procédure s'exécute', c'est simple, il faut que le code soit bon :
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim lmsg As Long 'OK
lmsg = x 'OUPS, tu enregistres une coordonnée
?!
Select Case lmsg
Case WM_LBUTTONDBLCLK 'Cette constante, est-elle déclarée qque part ?
' si c'est NON, la condition ne se fera jamais (et si tenté, que
par le plus
' grand des hasards, le pointeur de la
souris "x" correspond à la valeur
' de la
constante déclarée
frmServer.WindowState = vbNormal
frmServer.Show
End Select
End Sub
' *** Bref, tout simplement
:
Private Sub Form_DblClick()
frmServer.WindowState = vbNormal
frmServer.Show
' et
peut-être Unload Me ?
End Sub
--Mortalino--
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 6 nov. 2006 à 19:30
Je ne sais pas quoi te dire, j'ai mis 2 form dans un projet, depuis cet évènement (dblclick), je demande l'apparition d'une autre Form, et elle apparait bien.
Je ne met pas en doûte ton code, s'il a déjà fonctionné, peut-être, mais je ne comprends pas vraiment comment, qque chose m'échappe.
(confère commentaire que j'ai mis sur ton code) et en plus, lmsg est de type Long (sans décimales), alors qu'il doit récupérer la valeur de x, qui lui est de type Single(donc avec possibilité de décimales).
Voilà, c'est pour ça et les commentaires que là je sèche (+ essais)
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 6 nov. 2006 à 19:46
De plus, lmsg & WM_LBUTTONDBLCLK, ça sent l'API.
Je dirai même une api pour le systray.
Regarde sur ta barre des tâches, tu devrais avoir l'icone de ta form (systray = zone icones systèmes), il te suffira peut-être de double cliquer dessus pour qu'elle s'affiche
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
Dim lmsg As Long
If Me.ScaleMode = vbPixels Then
lmsg = x
Else
lmsg = x \ Screen.TwipsPerPixelX
End If
Select Case lmsg
Case WM_MOUSEMOVE:
Case WM_LBUTTONUP:
Case WM_LBUTTONUP:
Case WM_LBUTTONDBLCLK:
frmServer.WindowState = vbNormal
frmServer.Show
Case WM_RBUTTONDOWN:
Case WM_RBUTTONUP:
Case WM_RBUTTONDBLCLK:
End Select
End Sub
Private Declare Function Shell_NotifyIcon Lib "shell32" Alias "Shell_NotifyIconA" (ByVal dwMessage As Long, pnid As IconeTray) As Boolean
Private Sub Form_Load()
IconeT.cbSize = Len(IconeT)
IconeT.hwnd = Me.hwnd
IconeT.uID = 1&
IconeT.uFlags = Icone Or TIP Or MESSAGE
IconeT.uCallbackMessage = MOUSEMOVE
IconeT.hIcon = Me.Icon
IconeT.szTip = App.Title & Chr$(0)
Shell_NotifyIcon AJOUT, IconeT
App.TaskVisible = False
Me.ScaleMode = vbPixels
Me.Hide
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Select Case X
Case WM_LBUTTONDBLCLK:
frmServer.WindowState = vbNormal
frmServer.Show
End Select
End Sub