begin process at 2012 02 12 23:10:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

Obtenir la classe qui lance un thread, à partir du thread


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

Obtenir la classe qui lance un thread, à partir du thread

jeudi 12 juin 2008 à 13:54:23 | Obtenir la classe qui lance un thread, à partir du thread

Hyperpenguin

Bonjour a tous,

Voilà je vous expose mon probleme, j'ai un JDialog que j'ai modifié pour en faire un écran de connexion, l'utilisateur doit rentrer ses données , cliquer sur le bouton connecter, puis cette boite de dialogue disparait et laisse apparaitre un autre dialogue qui me sert d'écran de chargement: j'y fait apparaitre differents textes selon l'avancement. Pour cela j'ai créer un Thread dans mon 1er jDialog qui initialise tout dans mon programme et envoi le texte a mon écran de chargement. Mais lorsqu'une erreur survient, je veux faire apparaitre un JOptionPane d'erreur, mais a sa création je ne peut pas mettre "this" pour le composant auquel il est rataché, puisque "this" se refere au Thread.Ma question est donc:

Comment, de l'intérieur d'un thread, peut-on faire référence a la classe qui contient le thread?

Voilà, j'espère avoir été claire, et je vous remercie d'avance pour vos réponses.

-Le java, c'était plus facile en cours....-
jeudi 12 juin 2008 à 14:01:56 | Re : Obtenir la classe qui lance un thread, à partir du thread

dvoraky

Réponse acceptée !
Salut,

je pense que tu as fais un truc du style

Thread t = new Thread() {
    ...
};

t.start();

Je connais pas trop les threads. Par contre, pour faire référence à la classe qui inclu ce code, tu peux faire ça :

NomDeTaClasse.this.methodeQueTuVeux();

En clair pour le JOptionPane :

JOptionPane.showMessageDialog(NomDeTaClasse.this, ............);

A confirme tout de même...


Timmy!!!
jeudi 12 juin 2008 à 14:22:31 | Re : Obtenir la classe qui lance un thread, à partir du thread

Hyperpenguin

Merci, pour moi dans l'ordre ou c'est écrit c'est pas logique mais ça marche comme prévu, chapeau!

-Le java, c'était plus facile en cours....-
jeudi 12 juin 2008 à 14:26:35 | Re : Obtenir la classe qui lance un thread, à partir du thread

dvoraky

Si tu veux JOptionPane est une classe à part. Tu l'appeles et tu lui dis "Tiens la fenetre de message vas etre fille à ma classe principale NomDeMaClasse". Ensuite, tu dis que tu veux l'instance actuelle de ta classe, c'est pour ça que tu préfixes par .this

... je crois...


Timmy!!!
jeudi 12 juin 2008 à 15:48:46 | Re : Obtenir la classe qui lance un thread, à partir du thread

AlexN

Si this désigne l'instance en cours d'execution, alors dans un environnement multithread MaClasse.this désigne aussi l'instance en cours d'execution.
C'est-à-dire que si plusieurs instances de MaClasse sont en cours d'execution, MaClasse.this désignera uniquement celle en cours d'execution et pas forcement le parent du thread appelant.
Si cette astuce marche, je pense qu'elle fonctionnne uniquement en environnement monothread.
A confirmer...


Cette discussion est classée dans : apparaitre, écran, classe, thread, obtenir


Répondre à ce message

Sujets en rapport avec ce message

interaction entre Thread et JFrame [ par jpegg ] Bonsoir,J ai un probleme pour l'interaction entre un Thread et une interface Graphique. J ai crée une classe heritant d un Thread que j ai appelé Serv Enchainement d'écran [ par Aotearoa ] Ma question va sans doute sembler idiote et mal exprimée, mais que voulez-vous, je débute...J'ai créé une classe Lecture qui lit une base de donnée. D lancement de plusieurs threads pour affichage graphike [ par artichaud ] J'essaye de modifier mon moteur 3Dbon, en gros j'afficher une image, via des morceaux (des triangles) de cette image, pixel par pixel.Donc, autant pas [Débutant] Classe Parent ? [ par Onclickert ] Bonjour à tous,Je voudrai pouvoir tester dans un écran la classe qui a créé l'instance de cet écran.Je pense que celà doit être quelque chose comme ce pb thread ecriture lecture [ par orely15081982 ] salut j ai une 1ere classe qui envoit un msg par mon port serieensuite je cree un thread dans une autre classe qui doit attendre un e reponse sur ce m héritage multiple [ par developpatator ] Bonjour, Alors voilà: j'ai una appli composée d'une classe principale, et une classe Connexion qui regroupe toutes les méthode relatives à l'envoi/rec Thread [ par etudev ] Bonjour a tous,tout d'abord bonne fete a toute les femmes du monde.j'utilise une boucle pour activer des thread :for(i=0;idans sa methode run( ), le t thread [ par simo_azzaoui ] bonjour , g besoin d'aide sur une affaire de thread , voilà , g une classe qui herite de la classe thread , ma classe et une classe ki dessine des bal Threads [ par CHABRY ] Bonjour,je suis en train de développer une application JMS multithrédée ou je crée dans une classe Consommateur.java 10 threads auquels je passe une c probleme d'interaction entre classe [ par Abasedebasse ] Bonjour,J'ai une classe principale qui lance mon affichage graphique puis aprés un thread nommé Discussion...J'ai un bouton dans mon affichage graphiq


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 3,104 sec (3)

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