Bonjour à tous,
J'ai un détecteur de changement de fichiers dans un répertoire.
ex : création nouveau fichier.
Lorsque je détecte ça, et que l'extension correpond a ce que je veux, une fenêtre (classe extends JFrame) est appellée pour modifier ce fichier, etc...
Seulement problème auquel je n'avais pas pensé auparavant, c'est si je copie 15 fichiers dans ce repertoire, il va détecter tous les "nouveaux fichiers" et me lancer 15 interfaces en même temps. Ce qui n'est pas très cool.
Y a-t-il un moyen de bloquer les nouvelles fenetres tant que la fenêtre appellée n'a pas été fermée?
(Je ne sais pas si c'est très clair...je vais tenter un exemple)
A = interface principale qui instancie (-->) le détecteur de changement. (C)
B = interface appellée par le détecteur de changement. (C)
donc ce que je ne veux pas (et qui est le cas pour le moment) :
=> 15 B en même temps.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 A --> C si changements ds le répertoire.. C-->B C-->B C-->B etc..
ce que je veux obtenir :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 A-->C si changements ds le répertoire.. C-->B C attend que B ferme.. B est fermé. C-->B C attend que B ferme.. B est fermé. C-->B etc...
La mécanique derrière est la suivante :
lors d'une détection de changement, un tableau de File est envoyé à C
C traite ce tableau de File dans un "for" et fait unJ'aurais bien appellé un JOptionPane mais l'interface est trop complexe que pour le faire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part new B(file[i].getAbsolutePath())
Merci a vous![]()
Partager