Comment faire un wait ? [JAVA] - Java - Programmation
Marsh Posté le 14-01-2005 à 11:39:37
Si ce râle signifie "biourdel, regarde dans la JavaDoc", je tiens à préciser que je n'ai pas la JavaDoc sous la main, et que je ne peux pas la consulter en ligne car le proxy de ma boite ne m'autorise pas à aller sur le site de Sun.
Ce n'est donc pas une question de flemme, c'est surtout que je ne peux pas me documenter comme je le souhaiterai.
Marsh Posté le 14-01-2005 à 11:40:43
Kortex@HFR a écrit : le proxy de ma boite ne m'autorise pas à aller sur le site de Sun. |
OMFG§§§
Marsh Posté le 14-01-2005 à 11:53:16
Marsh Posté le 14-01-2005 à 11:56:09
Elle représente quoi ton image ? Non, parce que je peux pas la voir, le proxy me laisse pas voir ce qui est en provenance de ton hebergeur
En fait, le proxy de ma boite ne me laisse voir que ce qui a été décidé par la direction (un genre de blacklist à l'envers quoi). Il a fallu que je me batte pour avoir HFR déjà, alors obtenir l'ouverture de tous les sites qui pourraietn m'aider, faut pas y compter.
Marsh Posté le 14-01-2005 à 11:59:14
bon aller marre
syncronized(this)
{
wait();
}
Marsh Posté le 14-01-2005 à 11:59:18
ReplyMarsh Posté le 14-01-2005 à 12:26:22
Kortex@HFR a écrit : Si ce râle signifie "biourdel, regarde dans la JavaDoc", je tiens à préciser que je n'ai pas la JavaDoc sous la main, et que je ne peux pas la consulter en ligne car le proxy de ma boite ne m'autorise pas à aller sur le site de Sun. |
1) déjà c'est complètement con de faire du java sans avoir la javadoc. Mais je te rappelle que les sources du JDK sont fournies en standard et que tu peux refaire passer javadoc sur les sources.
2) "faire un wait sur une fenêtre (JWindow)" sent la connerie à plein nez. C'est ce qui m'a fait gueuler. Au pire, tu as SwingUtilies.invokeAndWait, mais surtout des fenêtre "modales" en java.
Marsh Posté le 14-01-2005 à 13:14:38
Bon, je vais essayer de me justifier, puisque visiblement c'est necéssaire.
Je travaille dans une boite qui m'a demandé de développer une fenêtre qui reste au dessus de toute les autres pendant une durée déterminée afin de présenter les objectifs et résultats au démarrage des postes clients.
Bien entendu, il ne faut pas pouvoir fermer cette fenêtre avant la fin de la durée définie par la direction (pas la peine de faire des commentaires sur les méthodes de management de la boite, je suis d'accord pour dire que c'est dégueulasse, mais je ne suis qu'un executant, je fais ce qu'on me dit, point barre).
Pour réaliser ceci, je n'ai aucun outil de développement, et la boite ne veut pas investir dans un RAD quelquonque (j'aurai adoré faire ça en Delphi, que je connais plutôt pas mal). Du coup, je suis obligé de me débrouiller avec du free ou de l'open source, et c'est pourquoi je me suis orienté sur Java pour réaliser ceci.
Ce que je veux faire, c'est donc :
- lancer ma fenêtre à l'écran avec un bouton de fermeture inactif par défaut
- mettre la fenêtre en attente durant le temps que ma direction m'aura défini
- à l'issue de ce temps, rendre le bouton de fermeture actif afin que l'utilisateur puisse fermer la fenêtre
Voila, vous savez tout, je sais c'est pas grand chose, mais bon quand on a rien sous la main pour se documenter, c'est pas évident.
Marsh Posté le 14-01-2005 à 13:33:03
ben deja c'est plus Thread.sleep(milis) que wait
et pis comme dit nraynaud : fenetre modale
Marsh Posté le 14-01-2005 à 13:34:31
Pour t'aider et pas pour etre désobligeant:
1 - il existe des RAD gratuit pour java eclipse 3 , netbean 4, la liste n'est pas complète.
2 - nraynaud a raison ce que tu veux faire peut etre fait en modale , ne te complique pas la vie avec un wait
Marsh Posté le 14-01-2005 à 13:45:44
et si tu bloques le thread swing, il se fait comment le refresh de la fenêtre ?
comment tu vas gérer avec les bordel qui font des splash au démarrage de la machine ?
Marsh Posté le 14-01-2005 à 13:48:10
Je travaille avec Eclipse justement, donc j'ai quand même un outils quii me facilité le développement.
Avec un Thread.sleep, tout fonctionne comme je veux, c'est nickel. J'ai trouvé juste avant de voir vos message, j'allais justement vous demander si c'étais une bonne solution
Pour ce qui est de la JWindow, je l'utilise pour ne pas avoir de barre de titre (il me semble que c'est la seule qui fasse ça ou alors j'ai vraiment rien compris). De même, je la met en StayOnTop et tout se passe à merveille (en tout cas ma direction est contente, moi j'ai juste réalisé un outils affreux qui met la pression sur les salariés de la boite).
Merci pour vos réponse.
Marsh Posté le 14-01-2005 à 13:50:59
nraynaud a écrit : et si tu bloques le thread swing, il se fait comment le refresh de la fenêtre ? |
Cette fenêtre n'a qu'un seul but : afficher des infos contenues dans un fichiers de propriétés. Donc je la lance, je fais le refresh pour quelle s'affiche correctement, et seulement ensuite je met le Thread swing en sleep. Donc pas de problème. Quand le Thread se réveille, il rend le bouton actif, et les gens peuvent fermer la fenêtre. C'est exactement le "cahier des charges" que l'ont m'a demandé de respecter.
Marsh Posté le 14-01-2005 à 11:23:52
Je tente de faire un wait sur une fenêtre (JWindow), mais la console me renvoie l'erreur suivante :
current thread not owner
J'ai donc essayé de fairer un thread qui réalise le wait dans sa méthode run, mais la encore, le message d'erreur est le même. Comment faire pour endormir ma JWindow pendant un temps donné ? Quel est cette histoire de thread owner ?
---------------
Au coeur du swirl - Mon feed