Bonjour,
Ma question est un peu complexe.
Je souhaite charger et décharger ma feuille de données en me servant de l'API WINDOWS.
J'ai mis dans un module les constantes suivantes :
J'ai ensuite déclaré :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 ' Replie la fenêtre de la gauche vers la droite Public Const AW_HOR_POSITIVE=&H1 ' Replie la fenêtre de la droite vers la gauche Public Const AW_HOR_NEGATIVE=&H2 ' Replie la fenêtre du haut vers le bas Public Const AW_VER_POSITIVE=&H4 ' Replie la fenêtre du bas vers le haut Public Const AW_VER_NEGATIVE=&H8 ' Masque la fenêtre Public Const AW_HIDE=&H10000 ' Réduction de la fenêtre vers son centre ou inversement Public Const AW_CENTER=&H10 ' Active la fenêtre Public Const AW_ACTIVATE=&H20000 ' Effet de fondu sur la fenêtre Public Const AW_BLEND=&H80000 ' Fait 'rouler' la fenêtre Public Const AW_SLIDE=&H40000
Mes renseignements provenant de 2 sources différentes, j'ai déclaré dans le formulaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Public Declare Function AnimateWindow Lib "user32" _ (ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) _ As Boolean
'Ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub Form_Load(Cancel As Integer) AnimateWindow Me.hwnd,10000, AW_CENTER _ Or AW_SLIDE End Sub
La première procédure ne fonctionne pas, et la deuxième reste noire pendant très longtemps et l'onglet ne s'affiche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Private Sub Form_Load() Debug.Print AnimateWindow (Me.hwnd,10000, &H10 _ Or &H20000) End Sub
J'ai fait également :
Là, celà fonctionne bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub Form_Unload(Cancel As Integer) ' Fermeture d'un onglet AnimateWindow Me.hwnd, 1600, AW_VER_NEGATIVE _ Or AW_HOR_NEGATIVE Or AW_HIDE End Sub
Quelqu'un peut-il me dire ce que je dois faire et ce qui ne va pas ?
D'avance merci,
JeanMickey
Bonjour,
Excusez-moi d'avoir posé ma question de façon trop complexe. C'est sans
doute pour cela que personne n'y a répondu.
D'une façon plus simple, voilà mon problème. J'ai tapé :
Avec l'évènement UnLoad, pas de problème. Par contre, avec Load, la
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Declare Function AnimateWindow Lib "user32" (ByVal hWnd As Long, _ ByVal dwTime As Long, ByVal dwFlags As Long) As Long Private Sub Form_Load() Debug.Print AnimateWindow(Me.hWnd, 1000, &H10 Or &H20000) End Sub Private Sub Form_UnLoad() Debug.Print AnimateWindow(Me.hWnd, 1000, &H8 Or &H2 Or &H10000) End Sub
fenêtre reste noire pendant très longtemps et la croix de fermeture ne s'affiche pas.
Quelqu'un pourrait-il me dire quoi faire?
D'avance merci,
JeanMickey
Partager