Bonjour à tous,
Je sèche pour redonner la main à une fenêtre windev :Ce que he veux faire : j'ai une appli windev qui lance un exe extérieur. Quand l'appli est fermée, je veux que la fenêtre ait le focus pour pouvoir poursuivre une saisie.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 RetourFonction est un booléen // Type C :BOOL LanceAppli("c:\windows\notepad.exe",exeActif,exeBloquant) Multitâche(50) RetourFonction = FenEtat(MaFenêtre, DessusTout) ListeAjoute(Liste1, NumériqueVersChaîne(RetourFonction)) Multitâche(10) FenEtat(MaFenêtre, Normal) Multitâche(10)
Comment reproduire :
1. Une fenêtre + un bouton
2. Lancer et cliquer sur le bouton : le bloc notes s'ouvre.
3. Afficher une fenêtre (non maximisée de façon à voir la croix de fermeture du bloc notes) au dessus du bloc notes qui est ouvert.
4. Fermer le bloc notes.
5. La fenêtre est bien repassée au dessus mais n'a pas le focus.
Notes : j'ai essayé
- avec les API ShowWindow/ SetForegroundWindow / SetWindowsPos sans succès. Au mieux,j'ai eu le résultat que me donne FenEtat.
- En mettant le focus sur un champ de la fenêtre, repriseSaisie,...
[EDIT] : je viens de tester en simulant un clic de souris sur la fenêtre avec EnvoieTouche() mais cela ne fonctionne pas.
Si vous avez des idées...
Merci d'avance,
Claude
Partager