Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Activer fenêtre si elle existe [ Divers / Débutant(e) ] (SkaPunkMan)

mardi 8 août 2006 à 11:42:18 | Activer fenêtre si elle existe

SkaPunkMan

Bonjour, je débute en java et j'aimerai savoir si il existe une commande qui permet de voir si une fenêtre est déjà ouverte.

Je m'explique, je fais une frame qui permet l'ouverture d'un programme. Si ce programme est déjà ouvert, mais réduit ou en arrière-plan, il faudrai mettre la fenêtre de ce programme au premier plan et non ouvrir une nouvelle fois le programme.
Est-ce possible?
Merci d'avance

SkAPunkMAn

mardi 8 août 2006 à 13:18:01 | Re : Activer fenêtre si elle existe

Twinuts

Membre Club Administrateur CodeS-SourceS
Salut,

si le programme n'est pas java il te faut utiliser autre chose que du java pour le faire
sinon si il est java utilise fenetre.isVisible()


------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA

mardi 8 août 2006 à 14:14:51 | Re : Activer fenêtre si elle existe

SkaPunkMan

Oui, le programe est en java, mais il n'a pas été créé par moi et existe déjà. Il n'est donc pas dans mon projet java. Est-ce malgré tout possible?
N'y a t-il pas une api windows qui permettrai de récuperer les noms des fenêtres ouvertes afin de comparer avec celle que je cherche?
Merci

SkAPunkMAn

mardi 8 août 2006 à 14:20:35 | Re : Activer fenêtre si elle existe

super_toinou

un truc qui est sur c est que tu pourra pas le faire en java !! dois surement y avoir une api windows pour ca mais tu devra te palucher du JNI a mon avis pour y arriver !! force et honneur, j peux t aider bien plus que ca !

mardi 8 août 2006 à 14:46:36 | Re : Activer fenêtre si elle existe

Twinuts

Membre Club Administrateur CodeS-SourceS
Salut,

Mouep une api Windows en java ....... je ne le redirai jamais assez si c'est pour faire du windows le mieux n'est pas d'utiliser java mais du .Net ..... ralala ces jeunes :D

sinon super_toinou a raison il te faut toucher a du JNI et pour ce faire tu as 2 solutions

soit tu lance le process via windows genre avec ShellExecute exemple :

HWND hwndExec = NULL; //ici tu stoquera le handle de la fenetre comme ca tu pourras tester
SHELLEXECUTEINFO ShExecInfo = {0};
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
ShExecInfo.hwnd = hwndExec
ShExecInfo.lpVerb = NULL;
ShExecInfo.lpFile = "C:\\monAppli.exe";//ici le nom de l'application      
ShExecInfo.lpParameters = "";   
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_SHOW;
ShExecInfo.hInstApp = NULL;   

ShellExecuteEx(&ShExecInfo);
//WaitForSingleObject(ShExecInfo.hProcess,INFINITE);//pas obligatoire mais comme ca tu attend que l'application soit bien executé
TerminateProcess(ShExecInfo.hProcess, 0);//pour killer le process

sinon tu as plus simple mais assez contraignant :

HWND hwndExec = FindWindow(NULL, "TitleDelaFenetre");//le titre correspond a celui de la barre de titre en au a gauche, ou celui afficher dans la barre des taches en bas je sais plus);

HWND hwndExec = FindWindow("NomClass", NULL);//Nom class c'est le nom que tu donne a la classe fenetre lors de sa creation



------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA

mardi 8 août 2006 à 15:20:46 | Re : Activer fenêtre si elle existe

Twinuts

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Petite correction pour
WaitForSingleObject(ShExecInfo.hProcess,INFINITE);
ca attrend que le process soit fini c'est l'equivalence de
(java)
Process p = Runtime...
p.waitFor();


------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA

mardi 8 août 2006 à 16:07:06 | Re : Activer fenêtre si elle existe

SkaPunkMan

Je vais essayé avec

HWND hwndExec = FindWindow(NULL, "TitleDelaFenetre");//le titre correspond a celui de la barre de titre en au a gauche, ou celui afficher dans la barre des taches en bas je sais plus);

HWND hwndExec = FindWindow("NomClass", NULL);//Nom class c'est le nom que tu donne a la classe fenetre lors de sa creation

et si ça ne va pas comme je veux, je tenterai l'autre.
Merci pour vos réponses.
SkAPunkMAn



Cette discussion est classé dans : programme, permet, existe, fenêtre, activer


Répondre à ce message

Sujets en rapport avec ce message

programme JAVA qui permet de generer du code HTML [ par onini ] Voila j'ai programme a realiser en Java qui permet de generer du code html, ou bien une page html souhaiter par l'utilisateur. Mon souci est que je n Fermer une fenêtre modale par programme ?? [ par tyty26 ] Bonjour,J'ai un gros souci : je ne parviens pas à fermer ma fenêtre secondaire (modale) au cours de ma gestion d'erreur.En swing il me semble que this Fermeture fenêtre [ par maxinfos ] Bonjour,j'ai un souci au niveau de mon programme : lorsque je pars d'une fenêtre Mère et que j'ouvre à partir de cette fenêtre d'autres fenêtres, en f besoin d'aide [ par guigounnet ] Bonjour a tous. Je poste ce message pour être avant tout aiguillé. Ne chercher pas à répondre de but en blanc à mon projet, je ne pense pas que cela s exécuter une applet [ par papillon2000 ] bonjour à tous, je veux exécuter un programme avec une applet,mais il ya un probléme,je ne sais pas quel programme à télécharger afin que sa marche .p Appel à OpenOffice ( swritter) et attente la farmeture de la fenêtre. [ par calmato007 ] Bonjour à tous,Voici mon soucis, j'aimerai à partir de code java exécuter un document OpenOffice ou Word, ou Excel . Tout ce passe bien, la fenetre av Envois SMS depuis un programme JAVA [ par mael974 ] Salut tout le mondeJe recherche des pistes et une orientation vanat l'ecriture d'un programme java.JE cherche a developper une appli JAVa ( ou J2M? )  mon programme ne reconnait pas ma base de données mySql [ par new_object ] slt tt le monde, voila, j'ai un probleme, un programe java qui travaille avec une base de donnée. avec access sa marche très bien, mais je dois passer Problème JTable dans une fenêtre. [ par frimmmm ] Bonjour a tous !Voilà j'ai un petit problème , dans une frame , j'ajoute une JTable , qui est le résultat d'une requête SQL.Mais voilà , a l'affichage Problème JInternalFrame [ par frimmmm ] Bonjour a tous !Je viens ici pour vous expliquer mon problème , j'ai réaliser une fenêtre pour une application , mais a la fin de mon code , j'ai voul


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.