Attente en JAVA
Dernière réponse : dans Programmation
Bonjour,
Volia, j'aimerai mettre dans mon code java entre deux lignes de code une sorte d'attente (comme un genre de boucle for qui ferait rien) pendant 3 seconde avant de continuer la suite de mon programme. Comment faire ?
------ code ------
ATTENDRE 3 SECONDE -> Comment faire ???
------ code -------
ps: j'ai essayé avec thread en vain.
Merci d'avance pour votre aide
Volia, j'aimerai mettre dans mon code java entre deux lignes de code une sorte d'attente (comme un genre de boucle for qui ferait rien) pendant 3 seconde avant de continuer la suite de mon programme. Comment faire ?
------ code ------
ATTENDRE 3 SECONDE -> Comment faire ???
------ code -------
ps: j'ai essayé avec thread en vain.
Merci d'avance pour votre aide
Autres pages sur : attente java
Lassé par la pub ? Créez un compte
Si je me rappel bien ça donne un truc du genre:
try{
wait(300);
}catch(InterruptedException e){
System.out.println(e.getMessage());
}
il faut mettre un try/catch car une exception peut se former
PS: j'ai mis 300 dans le wait car je crois que c'est des milli secondes mais je suis pas sur au pire tu test et tu modifies si c'est pas ça
try{
wait(300);
}catch(InterruptedException e){
System.out.println(e.getMessage());
}
il faut mettre un try/catch car une exception peut se former
PS: j'ai mis 300 dans le wait car je crois que c'est des milli secondes mais je suis pas sur au pire tu test et tu modifies si c'est pas ça
Re Bonjour,
Je vais présisé mon problème:
Voila, mon probleme c'est de mettre une attente entre le moment ou je crée mon JDialog et celui ou je le ferme afin qu'il ne reste que 5 seconde à l'écran. (mettre un attente entre deux ligne de code)
J'ai donc essayé avec un thread mais ça marche pas.
Creation du JDialog dans un JFrame lejframe
Attente...... // J'ai essayé en redefinissant thread et en l'appelant avec lethread.start, mais ça bloque et ne passe pas à la suite.
Fermeture du frame et don du JDialog avec lejfame.dispose();
Mais ça marche pas !!! Quelqu'un aurait une solution ?
Merci d'avance pour vos reponse
Je vais présisé mon problème:
Voila, mon probleme c'est de mettre une attente entre le moment ou je crée mon JDialog et celui ou je le ferme afin qu'il ne reste que 5 seconde à l'écran. (mettre un attente entre deux ligne de code)
J'ai donc essayé avec un thread mais ça marche pas.
Creation du JDialog dans un JFrame lejframe
Attente...... // J'ai essayé en redefinissant thread et en l'appelant avec lethread.start, mais ça bloque et ne passe pas à la suite.
Fermeture du frame et don du JDialog avec lejfame.dispose();
Mais ça marche pas !!! Quelqu'un aurait une solution ?
Merci d'avance pour vos reponse
lezert, RTFM:
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Thread.html#sleep(long,%20int)
le 's' est en minuscule.
http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Thread.html#sleep(long,%20int)
le 's' est en minuscule.
CRicky a dit :
lezert, RTFM:http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Thread.html#sleep(long,%20int)
le 's' est en minuscule.
Merci !!!
Classe
{
Creation du Jframe avec une image
attente avec ce que tu m'as dit
Fermeture du JFrame
}
---> Si je l'appelle directement ça marche tres bien par contre si je l'appelle dans une autre classe alors la mon Jframe s'affiche de maniere transparente (il a du mal a se charger) et se ferme sans avoir vu l'image. L'attente fait qu'il n'arrive pas a se charger !!!
Rq: il ne s'affiche qu'apres l'attente quand j'enleve sa fermeture dans la classe qui le definie.
Comment resoudre se probleme ???
Merci d'avance
CRicky a dit :
le sleep arrête le thread courant. Si tu es dans le thread principal, la gestion des messages et affichages sont aussi endormies
Tu peux lancer ton algo dans un thread que tu peux bloquer 3 secondes, l'affichage et la gestion de messages ne seraient plus bloqués.
Voila mon code, je vois pas tres bien ce que tu veux dire...
Volia mes trois classe: /** * La classe Attendre extens la methode thread */ public class Attendre extends Thread { public int temps; public Attendre(int le_temps) { temps=le_temps; } public void run() { try { sleep(temps); } catch(Exception ex){} } } /** * La classe Affichage Info extends un JFrame qui contiendra une image */ public AffichageInfo(String le_titre,String le_message,int le_type) { setLocationRelativeTo(this); titre=le_titre; message=le_message; type=le_type; panel=new JImage("limage.gif",360,220); getContentPane().setLayout(new BorderLayout()); this.add(panel,BorderLayout.CENTER); this.setPreferredSize(new Dimension(300, 300)); pack(); setVisible(true); } /** * La classe Jouer va appeller les deux classes precedentes */ ----------------------- Code --------------------------------- IHM.AffichageInfo messageinfo = new IHM.AffichageInfo("De","Vous avez fait: " + valeurDe,0 ); IHM.Attendre Attente=new IHM.Attendre(5000); Attente.start(); try { Attente.join(); } catch(Exception ex){} messageinfo.dispose(); ------------------------ Code ------------------------------------ /** * La classe AffichageJeu est la classe principale qui va appellé la classe jouer */ public class AffichageJeu extends JFrame implements ActionListene { Jouer j= new Jouer(......); etc ....... [b] // ET DONC ICI L'IMAGE NE S'AFFICHE COMME JE LE PECISE PRECEDEMMENT[/b] }
Je voulais donc savoir comment resoudre ce probleme. Merci d'avance pour votre aide
Je pense que le probleme vient de la classe Jouer et plus precisement de
try
{
Attente.join();
}
catch(Exception ex){}
En effet, lorsque je le met pas l'affiche s'affiche nickel et disparait automatiquement au bout d'un certain temps, mais le probleme c'est que sans attente.joint() le programme continue à defiler et donc ça ne me va pas !!! En effet, le attent.joint() permet il me semble d'ttendre la fin du thread avant de passer a la suite.
Si quelqu'un à une solution, je le remercie d'avance ca ça fait deux jours que je bloque !!!!
try
{
Attente.join();
}
catch(Exception ex){}
En effet, lorsque je le met pas l'affiche s'affiche nickel et disparait automatiquement au bout d'un certain temps, mais le probleme c'est que sans attente.joint() le programme continue à defiler et donc ça ne me va pas !!! En effet, le attent.joint() permet il me semble d'ttendre la fin du thread avant de passer a la suite.
Si quelqu'un à une solution, je le remercie d'avance ca ça fait deux jours que je bloque !!!!
Quand tu lances le thread, il ne faut pas que tu fasses les autres opérations après, car le thread est exécuté en parallèle (comme un autre programme, mais dans le même processus). C'est le thread, qui lorsqu'il a finit envoie un signal indiquant que l'attente est écoulé.
Donc, pendant l'attente, ton programme continueras comme si tu n'avais pas lancé le thread, mais lorsque celui-ci sera terminé, le temps sera écoulé.
Donc, pendant l'attente, ton programme continueras comme si tu n'avais pas lancé le thread, mais lorsque celui-ci sera terminé, le temps sera écoulé.
CRicky a dit :
Quand tu lances le thread, il ne faut pas que tu fasses les autres opérations après, car le thread est exécuté en parallèle (comme un autre programme, mais dans le même processus). C'est le thread, qui lorsqu'il a finit envoie un signal indiquant que l'attente est écoulé.Donc, pendant l'attente, ton programme continueras comme si tu n'avais pas lancé le thread, mais lorsque celui-ci sera terminé, le temps sera écoulé.
Je te remercie pour ton aide. Par contre, vu que tu as mon code il ne serait pas possible que tu le modifie afin qu'il marche. Je sais que je t'en demande beaucoup, mais ça fait tellemnt longtemps que je cherche, que j'ai pas d'autres solution car j'ai essayer des milllions de possiblité pour le code en vain.
Merci d'avance
Lassé par la pub ? Créez un compte
- Contenus similaires :
- SolutionsFonction clonage et afficher avec java
- ForumLe telechargementavec emule reste en attente
- SolutionsDéplacement des fichiers en java
- ForumLexmark panne impossible d\'imprimer documents en attente
- ForumBloquer sur "En attente de ..."
- SolutionsCompilation Java
- SolutionsRedirection console Java
- ForumAttente de réponse du système sonore (ubuntu)
- ForumProblème connexion freebox ATTENTE DE LA REPONSE A LA CONNEXION: rock\'n roll
- Voir plus