pb pour activer une fenêtre [C++, MFC] (haaa, enfin de retour au C++) - Programmation
Marsh Posté le 31-07-2001 à 12:56:14
Avant toute chose, faut peut-être (?) désactiver la feuille courante (qui risque peut-être d'entrer en conflit de "qui a le focus" )
// Désactive la feuille "mère"
EnableWindow(hdlg, FALSE);
fonction ad-hoc(hWndFeuilleEtrangère);
puis
// revalide la feuille "mère"
EnableWindow(hdlg, TRUE);
D'après mon expérience, SetFocus() ne fait que faire que les touches frappées seront dirigées vers cette feuille, sans l'activer visiblement.
Dans ce contexte, si le handle de la feuille est bien le bon, essayer ShowWindow();
Un SendMessage(hWndFeuilleEtrangère, WM_QUIT, 0, 0L); permettrait (peut-être, jamais essayé sur une appli étrangère) de faire fermer cette fenêtre (:lol pour tester.
Marsh Posté le 31-07-2001 à 15:13:10
essaye d'envoyer un message comme WM_ACTIVATE ... au pire un WM_LBUTTONDOWN .
Marsh Posté le 31-07-2001 à 11:34:00
Voila, en fait je voudrai pouvoir repérer, dans une frame qui appartient pas à mon appli, le bouton qui à le focus (bouton par défaut).
Pour cela, il faut que je donne à cette Frame le même statut que si qqn l'avait rendue active, et j'y arrive pas !
g le handle de cette fenêtre, g tout tenté: le SetActiveWindow, le ShowWindow(SW_SHOW), le SetFocus()...
ça va pas...
qqn à une idée !?