Re: Handle fenêtre windows précédente | Sujet: Re: Handle fenêtre windows précédente par Garogo sur 30/12/2004 2:18:59
Merci, voici ce que j'ai fait si ca peut intéresser quelqu'un:
// Declaration globale collection de procedure
HandleFenêtreEnCours est un entier
HandleFenêtrePrécédente est un entier
HandleMaFenêtre est un entier
NuméroTimer est un entier
// GFFenetreDessusTout et GFFenetreSansFocusStartà lancer dans le traitement d'initialisation de la fenêtre:
PROCEDURE GFFenetreDessusTout()
// Le fenêtre restera au dessus des autres
AppelDLL32("user32","SetWindowPos",Handle(MaFenêtre..Nom),-1,0,0,0,0,0x3)
PROCEDURE GFFenetreSansFocusStart()
// Récupération handle fenetre en cours
HandleMaFenêtre = Handle(MaFenêtre..Nom)
// Lancement du timer qui rendra toujours la main a l'application tierce
NuméroTimer = TimerSys("TRendFocus",10)
//// Procedure du timer:
PROCEDURE TRendFocus()
//Handle fenetre active en cours
HandleFenêtreEnCours = SysFenActive()
SI HandleFenêtreEnCours = 0 ALORS RETOUR
SI HandleFenêtreEnCours = HandleMaFenêtre ALORS
// si la fenetre en cours est ma fenetre je rend le focus a la fenêtre windows précédente
SI HandleFenêtrePrécédente = 0 ALORS RETOUR
SysFenActive(HandleFenêtrePrécédente)
SINON
// Sinon je note quelle est la fenêtre en cours
HandleFenêtrePrécédente = HandleFenêtreEnCours
FIN
// procédure pour stopper arreter de rendre le focus si necessaire
PROCEDURE GFFenetreSansFocusStop()
FinTimerSys(NuméroTimer)
Ca marche bien, par contre ca se complique un peu pour gérer les clics apres , mais ca c'est une autre histoire :P
Merci :)
|
|
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
|