Je n'arrive pas à utiliser Timer.
Je désire faire apparaître un message dans le coin
inférieur droit de l'écran.
Et freiner la remontée de la Form avec le Timer.
Mais programmé comme je l'ai fait ça retarde juste
l'apparition initiale de la Form.
Merci de m'indiquer comment modifier mon code.
--
a+ Jean-Pol
Site Web : www.colovid.be
Site Web perso pour le fun : http://users.skynet.be/DAVID/
Cette page est transmise avec des électrons 100% recyclés.
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
Dim taskbarHeight
Dim ABD As APPBARDATA
Dim taskbar As Long
SHAppBarMessage ABM_GETTASKBARPOS, ABD
taskbar = (ABD.rc.Bottom - ABD.rc.tOp) * Screen.TwipsPerPixelY
taskbarHeight = taskbar
' POSITIONNEMENT DE LA FENÊTRE.
MessagePopup.left = (Screen.Width - MessagePopup.Width - 50) ' - &H10
MessagePopup.tOp = (Screen.Height - taskbar)
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Dim Ok As Boolean
Do Until Ok = True
If MessagePopup.tOp > Screen.Height - MessagePopup.Height -
taskbarHeight Then
MessagePopup.tOp = MessagePopup.tOp - 10 '0: MsgBox
("R")
Else
MessagePopup.tOp = Screen.Height - MessagePopup.Height -
taskbarHeight
Timer1.Enabled = False
Ok = True
' MsgBox ("3R")
End If
DoEvents
Loop
End Sub
Private Sub Label1_Click()
Unload MessagePopup
End Sub
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gloops
David a écrit, le 10/01/2010 12:29 :
Bonjour à tous,
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Bonjour,
Ben oui mais tu ne dis pas comment tu l'as programmé, alors on fait comment pour te dire ce qui doit être modifié ?
David a écrit, le 10/01/2010 12:29 :
Bonjour à tous,
Je n'arrive pas à utiliser Timer.
Je désire faire apparaître un message dans le coin
inférieur droit de l'écran.
Et freiner la remontée de la Form avec le Timer.
Mais programmé comme je l'ai fait ça retarde juste
l'apparition initiale de la Form.
Merci de m'indiquer comment modifier mon code.
Bonjour,
Ben oui mais tu ne dis pas comment tu l'as programmé, alors on fait
comment pour te dire ce qui doit être modifié ?
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Bonjour,
Ben oui mais tu ne dis pas comment tu l'as programmé, alors on fait comment pour te dire ce qui doit être modifié ?
Jacquouille14
David a écrit :
Bonjour à tous,
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Bonsoir, Je ne mettrais pas le dim OK dans la Sub Timer1_Timer car il y a initialisation à chaque appel de timer1 et il ne semble pas nécessaire. Dans form load, je mettrais le me.top = screen.height - 100 (à définir) pour la faire apparaitre par le bas. Le message est en haut de la form. MessagePopup.tOp = me.top + 100 Ensuite dans form load je lance le timer1. (je fais quelques tests pour savoir la fréquence de déclenchement que je désire en 1000èmes de seconde.) Dans sub timer1: if me.top < 20 me.top =0: Timer1.Enabled = False'la form est en place 'le message peut disparaitre si inutile else me.top = me.top -20'la form remonte de 20 lignes end if Replacer le message popup pour ne pas qu'il monte avec la form: MessagePopup.tOp = MessagePopup.tOp + 20 end sub 'timer1 Il faut au moins 25 appels de timer par seconde pour avoir un mouvement continu soit 1 appel tous les 40 millièmes de seconde (interval). Screen.height donne le nombre de lignes de l'écran. Si l'on veut l'apparition totale de la page en 10 secondes: lignes à monter par seconde = (screen.height -100)/10 lignes par appel timer1 = int((screen.height -100)/10/25) Noter qu'il peut être utile de bloquer tous les clics pendant la montée de la feuille. Les nombres 100 20 10 sont pris au "pif". Tout ça est à finaliser à votre goût. --
Jacques dit Jacquouille
David a écrit :
Bonjour à tous,
Je n'arrive pas à utiliser Timer.
Je désire faire apparaître un message dans le coin
inférieur droit de l'écran.
Et freiner la remontée de la Form avec le Timer.
Mais programmé comme je l'ai fait ça retarde juste
l'apparition initiale de la Form.
Merci de m'indiquer comment modifier mon code.
Bonsoir,
Je ne mettrais pas le dim OK dans la Sub Timer1_Timer car
il y a initialisation à chaque appel de timer1 et il ne semble pas
nécessaire.
Dans form load, je mettrais le me.top = screen.height - 100 (à définir)
pour la faire apparaitre par le bas. Le message est en haut de la form.
MessagePopup.tOp = me.top + 100
Ensuite dans form load je lance le timer1. (je fais quelques tests pour
savoir la fréquence de déclenchement que je désire en 1000èmes de
seconde.) Dans sub timer1:
if me.top < 20
me.top =0: Timer1.Enabled = False'la form est en place
'le message peut disparaitre si inutile
else
me.top = me.top -20'la form remonte de 20 lignes
end if
Replacer le message popup pour ne pas qu'il monte avec la form:
MessagePopup.tOp = MessagePopup.tOp + 20
end sub 'timer1
Il faut au moins 25 appels de timer par seconde pour avoir un mouvement
continu soit 1 appel tous les 40 millièmes de seconde (interval).
Screen.height donne le nombre de lignes de l'écran. Si l'on
veut l'apparition totale de la page en 10 secondes:
lignes à monter par seconde = (screen.height -100)/10
lignes par appel timer1 = int((screen.height -100)/10/25)
Noter qu'il peut être utile de bloquer tous les clics pendant la montée
de la feuille.
Les nombres 100 20 10 sont pris au "pif".
Tout ça est à finaliser à votre goût.
--
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Bonsoir, Je ne mettrais pas le dim OK dans la Sub Timer1_Timer car il y a initialisation à chaque appel de timer1 et il ne semble pas nécessaire. Dans form load, je mettrais le me.top = screen.height - 100 (à définir) pour la faire apparaitre par le bas. Le message est en haut de la form. MessagePopup.tOp = me.top + 100 Ensuite dans form load je lance le timer1. (je fais quelques tests pour savoir la fréquence de déclenchement que je désire en 1000èmes de seconde.) Dans sub timer1: if me.top < 20 me.top =0: Timer1.Enabled = False'la form est en place 'le message peut disparaitre si inutile else me.top = me.top -20'la form remonte de 20 lignes end if Replacer le message popup pour ne pas qu'il monte avec la form: MessagePopup.tOp = MessagePopup.tOp + 20 end sub 'timer1 Il faut au moins 25 appels de timer par seconde pour avoir un mouvement continu soit 1 appel tous les 40 millièmes de seconde (interval). Screen.height donne le nombre de lignes de l'écran. Si l'on veut l'apparition totale de la page en 10 secondes: lignes à monter par seconde = (screen.height -100)/10 lignes par appel timer1 = int((screen.height -100)/10/25) Noter qu'il peut être utile de bloquer tous les clics pendant la montée de la feuille. Les nombres 100 20 10 sont pris au "pif". Tout ça est à finaliser à votre goût. --
Jacques dit Jacquouille
at
David a formulé la demande :
Bonjour à tous,
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Je pense que ton timer est inutile. Tu appelles directement ta routine pour faire apparaître et remonter ta form, point barre. Et la routine contient:
do while ...
doevents
loop
Si tu veux un effet de ralenti, tu changes le pas d'incrémentation au fur et à mesure.
en gros ça donne
Private Sub Command1_Click() Dim x, y, z, w Me.Top = 6000 w = 3000 x = Me.Top y = Me.Top - w Do While x > y Me.Top = x x = x - (0.01 * z) z = (x * 2 / (w)) DoEvents 'Label1.Caption = z Loop
End Sub
A+
David a formulé la demande :
Bonjour à tous,
Je n'arrive pas à utiliser Timer.
Je désire faire apparaître un message dans le coin
inférieur droit de l'écran.
Et freiner la remontée de la Form avec le Timer.
Mais programmé comme je l'ai fait ça retarde juste
l'apparition initiale de la Form.
Merci de m'indiquer comment modifier mon code.
Je pense que ton timer est inutile. Tu appelles directement ta routine
pour faire apparaître et remonter ta form, point barre. Et la routine
contient:
do while ...
doevents
loop
Si tu veux un effet de ralenti, tu changes le pas d'incrémentation au
fur et à mesure.
en gros ça donne
Private Sub Command1_Click()
Dim x, y, z, w
Me.Top = 6000
w = 3000
x = Me.Top
y = Me.Top - w
Do While x > y
Me.Top = x
x = x - (0.01 * z)
z = (x * 2 / (w))
DoEvents
'Label1.Caption = z
Loop
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Je pense que ton timer est inutile. Tu appelles directement ta routine pour faire apparaître et remonter ta form, point barre. Et la routine contient:
do while ...
doevents
loop
Si tu veux un effet de ralenti, tu changes le pas d'incrémentation au fur et à mesure.
en gros ça donne
Private Sub Command1_Click() Dim x, y, z, w Me.Top = 6000 w = 3000 x = Me.Top y = Me.Top - w Do While x > y Me.Top = x x = x - (0.01 * z) z = (x * 2 / (w)) DoEvents 'Label1.Caption = z Loop
End Sub
A+
David
Bonjour,
Un grand Merci pour vos réponses.
-- a+ Jean-Pol Site Web : www.colovid.be Site Web perso pour le fun : http://users.skynet.be/DAVID/ Cette page est transmise avec des électrons 100% recyclés.
"at" a écrit dans le message de news: 4b4a0b72$0$959$
David a formulé la demande :
Bonjour à tous,
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Je pense que ton timer est inutile. Tu appelles directement ta routine pour faire apparaître et remonter ta form, point barre. Et la routine contient:
do while ...
doevents
loop
Si tu veux un effet de ralenti, tu changes le pas d'incrémentation au fur et à mesure.
en gros ça donne
Private Sub Command1_Click() Dim x, y, z, w Me.Top = 6000 w = 3000 x = Me.Top y = Me.Top - w Do While x > y Me.Top = x x = x - (0.01 * z) z = (x * 2 / (w)) DoEvents 'Label1.Caption = z Loop
End Sub
A+
Bonjour,
Un grand Merci pour vos réponses.
--
a+ Jean-Pol
Site Web : www.colovid.be
Site Web perso pour le fun : http://users.skynet.be/DAVID/
Cette page est transmise avec des électrons 100% recyclés.
"at" <at@noemail.fr> a écrit dans le message de news:
4b4a0b72$0$959$ba4acef3@news.orange.fr...
David a formulé la demande :
Bonjour à tous,
Je n'arrive pas à utiliser Timer.
Je désire faire apparaître un message dans le coin
inférieur droit de l'écran.
Et freiner la remontée de la Form avec le Timer.
Mais programmé comme je l'ai fait ça retarde juste
l'apparition initiale de la Form.
Merci de m'indiquer comment modifier mon code.
Je pense que ton timer est inutile. Tu appelles directement ta routine
pour faire apparaître et remonter ta form, point barre. Et la routine
contient:
do while ...
doevents
loop
Si tu veux un effet de ralenti, tu changes le pas d'incrémentation au fur
et à mesure.
en gros ça donne
Private Sub Command1_Click()
Dim x, y, z, w
Me.Top = 6000
w = 3000
x = Me.Top
y = Me.Top - w
Do While x > y
Me.Top = x
x = x - (0.01 * z)
z = (x * 2 / (w))
DoEvents
'Label1.Caption = z
Loop
-- a+ Jean-Pol Site Web : www.colovid.be Site Web perso pour le fun : http://users.skynet.be/DAVID/ Cette page est transmise avec des électrons 100% recyclés.
"at" a écrit dans le message de news: 4b4a0b72$0$959$
David a formulé la demande :
Bonjour à tous,
Je n'arrive pas à utiliser Timer. Je désire faire apparaître un message dans le coin inférieur droit de l'écran. Et freiner la remontée de la Form avec le Timer. Mais programmé comme je l'ai fait ça retarde juste l'apparition initiale de la Form. Merci de m'indiquer comment modifier mon code.
Je pense que ton timer est inutile. Tu appelles directement ta routine pour faire apparaître et remonter ta form, point barre. Et la routine contient:
do while ...
doevents
loop
Si tu veux un effet de ralenti, tu changes le pas d'incrémentation au fur et à mesure.
en gros ça donne
Private Sub Command1_Click() Dim x, y, z, w Me.Top = 6000 w = 3000 x = Me.Top y = Me.Top - w Do While x > y Me.Top = x x = x - (0.01 * z) z = (x * 2 / (w)) DoEvents 'Label1.Caption = z Loop