Comment afficher au 1er plan (mais PAS toujours à l'écran), je fais ceci
:
Depuis l'exe je lance un site avec l'explorer dans le load, puis je lui
demande de s'afficher au 1er plan (enfin, je crois), dans l'activate, mais
ça ne marche pas le site de l'explorer recouvre le programme GRRrrrrrr...
:o)
ShellExecute Me.hwnd, "Open", Site, "", App.Path, 1
End Sub ' load
Sub Form_Activate()
Picture1(240).SetFocus
'Form1.Show ???
' Form1.SetFocus ??? MARCHE PAS ???
' Me.SetFocus ???
End Sub
Merci, voir ma dernière réponse à 23h52, j'ai trouvé une solution "en force", je mets toujours en premier à l'écran juste après le lancement du site, puis je retire "toujours en 1er à l'écran", et ça reste au dessus tant qu'on ne touche pas à autre chose, c'est ce que je voulais, mais en moins lourd, enfin, bref...
"parci" a écrit dans le message de news:4a8f16ff$0$1528$
parci a écrit :
LE TROLL a écrit :
Bonjour,
Merci de ta réponse, mais ça ne marche pas davantage !
Déjà toi tu lances l'explorer, c'est un logiciel PC, évidemment que ça marche, mais ce n'est absolument pas l'exemple que j'ai donné (moi j'appelle un site) !
D'autre part l'API ShellExecute je crois accepte tous les explorer, alors que Shelle n'accepte qu'InternetExplorer il me semble...
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Private Declare Function SetForegroundWindow Lib "user32" (ByVal hWnd As Long) As Long Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Load() Dim Site As String Site = "http://irolog.free.fr" ShellExecute Me.hWnd, "Open", Site, "", App.Path, 1 Sleep 500 SetForegroundWindow Me.hWnd End Sub
Ben, en fait non, ça marche avec FF mais pas avec IE ou Opera.
Bonjour,
Merci, voir ma dernière réponse à 23h52, j'ai trouvé une solution "en
force", je mets toujours en premier à l'écran juste après le lancement du
site, puis je retire "toujours en 1er à l'écran", et ça reste au dessus tant
qu'on ne touche pas à autre chose, c'est ce que je voulais, mais en moins
lourd, enfin, bref...
"parci" <parci@free.fr> a écrit dans le message de
news:4a8f16ff$0$1528$426a74cc@news.free.fr...
parci a écrit :
LE TROLL a écrit :
Bonjour,
Merci de ta réponse, mais ça ne marche pas davantage !
Déjà toi tu lances l'explorer, c'est un logiciel PC, évidemment que
ça marche, mais ce n'est absolument pas l'exemple que j'ai donné (moi
j'appelle un site) !
D'autre part l'API ShellExecute je crois accepte tous les explorer,
alors que Shelle n'accepte qu'InternetExplorer il me semble...
Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal
lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As
String, ByVal nShowCmd As Long) As Long
Private Declare Function SetForegroundWindow Lib "user32" (ByVal hWnd As
Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Load()
Dim Site As String
Site = "http://irolog.free.fr"
ShellExecute Me.hWnd, "Open", Site, "", App.Path, 1
Sleep 500
SetForegroundWindow Me.hWnd
End Sub
Ben, en fait non, ça marche avec FF mais pas avec IE ou Opera.
Merci, voir ma dernière réponse à 23h52, j'ai trouvé une solution "en force", je mets toujours en premier à l'écran juste après le lancement du site, puis je retire "toujours en 1er à l'écran", et ça reste au dessus tant qu'on ne touche pas à autre chose, c'est ce que je voulais, mais en moins lourd, enfin, bref...
"parci" a écrit dans le message de news:4a8f16ff$0$1528$
parci a écrit :
LE TROLL a écrit :
Bonjour,
Merci de ta réponse, mais ça ne marche pas davantage !
Déjà toi tu lances l'explorer, c'est un logiciel PC, évidemment que ça marche, mais ce n'est absolument pas l'exemple que j'ai donné (moi j'appelle un site) !
D'autre part l'API ShellExecute je crois accepte tous les explorer, alors que Shelle n'accepte qu'InternetExplorer il me semble...
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long Private Declare Function SetForegroundWindow Lib "user32" (ByVal hWnd As Long) As Long Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Sub Form_Load() Dim Site As String Site = "http://irolog.free.fr" ShellExecute Me.hWnd, "Open", Site, "", App.Path, 1 Sleep 500 SetForegroundWindow Me.hWnd End Sub
Ben, en fait non, ça marche avec FF mais pas avec IE ou Opera.
AT
Après mûre réflexion, LE TROLL a écrit :
Ben quand tu verras ta forme devant le site tu me diras ?
Pour le timer ça ne peut pas coller, car le timer il va exécuter toutes les 5 secondes, certes, mais il va exécuter dès qu'on l'appelle le code qu'il contient, "puis", toutes les 5 secondes, donc il faut lui mettre une boucle, par exemple i = 0, puis dans le timer i = i + 1, puis (si i > 0 alors)... Mais ceci est équivalent à
Dim retval retval = Shell("explorer.exe http://Irolog.free.fr", 6) sleep 5000
Ce qui ne change rien, désolé :o)
Sleep n'est pas un mot clef visual basic. Tu veux que l'on exécute tes exemples, mais ceux-ci contiennent des procédures que tu ne publies pas. Le fait que ce soit ton site ne change rien, sauf à faire ta pub... en lançant Internet explorer par défaut sans l'url il affiche la page d'accueil défini à l'avance, en l'occurrence MSN chez moi.
Le code ci-dessous fonctionne .
Private Sub Form_Load() Dim retval retval = Shell("explorer.exe http://Irolog.free.fr", 6) Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer() Show Timer1.Enabled = False End Sub
J'ai testé avec un timer à 1000 (1 seconde) mais bien sur le delai va dependre du temps que met la machine à lancer internet explorer! Si ton pc met 8 secondes pour ouvrir IE, celui-ci sera au premier plan!
Alors comme déjà expliqué, si tu avais lu ma réponse précédente, tu peux utiliser ça:
Private Declare Function SetWindowPos Lib "USER32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _ ByVal x As Long, ByVal y As Long, ByVal cx As Long, _ ByVal cy As Long, ByVal wFlags As Long) As Long
Ben quand tu verras ta forme devant le site tu me diras ?
Pour le timer ça ne peut pas coller, car le timer il va exécuter toutes
les 5 secondes, certes, mais il va exécuter dès qu'on l'appelle le code qu'il
contient, "puis", toutes les 5 secondes, donc il faut lui mettre une boucle,
par exemple i = 0, puis dans le timer i = i + 1, puis (si i > 0 alors)...
Mais ceci est équivalent à
Dim retval
retval = Shell("explorer.exe http://Irolog.free.fr", 6)
sleep 5000
Ce qui ne change rien, désolé :o)
Sleep n'est pas un mot clef visual basic. Tu veux que l'on exécute tes
exemples, mais ceux-ci contiennent des procédures que tu ne publies
pas.
Le fait que ce soit ton site ne change rien, sauf à faire ta pub... en
lançant Internet explorer par défaut sans l'url il affiche la page
d'accueil défini à l'avance, en l'occurrence MSN chez moi.
Le code ci-dessous fonctionne .
Private Sub Form_Load()
Dim retval
retval = Shell("explorer.exe http://Irolog.free.fr", 6)
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
Show
Timer1.Enabled = False
End Sub
J'ai testé avec un timer à 1000 (1 seconde) mais bien sur le delai va
dependre du temps que met la machine à lancer internet explorer! Si ton
pc met 8 secondes pour ouvrir IE, celui-ci sera au premier plan!
Alors comme déjà expliqué, si tu avais lu ma réponse précédente, tu
peux utiliser ça:
Private Declare Function SetWindowPos Lib "USER32" (ByVal hwnd As Long,
ByVal hWndInsertAfter As Long, _
ByVal x As Long,
ByVal y As Long, ByVal cx As Long, _
ByVal cy As Long,
ByVal wFlags As Long) As Long
Ben quand tu verras ta forme devant le site tu me diras ?
Pour le timer ça ne peut pas coller, car le timer il va exécuter toutes les 5 secondes, certes, mais il va exécuter dès qu'on l'appelle le code qu'il contient, "puis", toutes les 5 secondes, donc il faut lui mettre une boucle, par exemple i = 0, puis dans le timer i = i + 1, puis (si i > 0 alors)... Mais ceci est équivalent à
Dim retval retval = Shell("explorer.exe http://Irolog.free.fr", 6) sleep 5000
Ce qui ne change rien, désolé :o)
Sleep n'est pas un mot clef visual basic. Tu veux que l'on exécute tes exemples, mais ceux-ci contiennent des procédures que tu ne publies pas. Le fait que ce soit ton site ne change rien, sauf à faire ta pub... en lançant Internet explorer par défaut sans l'url il affiche la page d'accueil défini à l'avance, en l'occurrence MSN chez moi.
Le code ci-dessous fonctionne .
Private Sub Form_Load() Dim retval retval = Shell("explorer.exe http://Irolog.free.fr", 6) Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer() Show Timer1.Enabled = False End Sub
J'ai testé avec un timer à 1000 (1 seconde) mais bien sur le delai va dependre du temps que met la machine à lancer internet explorer! Si ton pc met 8 secondes pour ouvrir IE, celui-ci sera au premier plan!
Alors comme déjà expliqué, si tu avais lu ma réponse précédente, tu peux utiliser ça:
Private Declare Function SetWindowPos Lib "USER32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, _ ByVal x As Long, ByVal y As Long, ByVal cx As Long, _ ByVal cy As Long, ByVal wFlags As Long) As Long