begin process at 2012 02 13 06:21:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

Activer fenêtre si elle existe


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Activer fenêtre si elle existe

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ée 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 Probleme fichier properties [ par Unifi ] Bonjour à tous, Tout d'abord je me suis permis de poster cette discussion dans cette catégorie mais je ne suis pas sûr que c'est bon. Donc veuillez programme java qui convertit un texte en mode PDU [ par mendou ] Salut j'aimerais écrire un programme java qui convertira un texte en mode PDU, j'ai fait des recherches sur le mode PDU et je me suis aperçu que ce n' Utiliser un programme externe [ par christophedlr ] Bonsoir, Je souhaiterais programmer un logiciel en Java que j'avais commencé préalablement en C++ avec QT (qui me pose des soucis d'où le changement recuperer paramètres d'un xsd [ par nahoulaa ] Bonjour J'ai besoin d'un programme java générique qui prend en entrée un fichier xsd quelconque(un xsd relative à un wsdl), et me retourne ses paramèt


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,746 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales