Evenements sur JTables contenues dans des onglets.... [resolu] - Java - Programmation
Marsh Posté le 10-05-2004 à 22:01:17
J'avoue que je n'ai pas lu ton problème en entier mais ça ressemble à une absence de classe controleur. Tu lui passe en entrée les différentes classes de ton projet qui doivent interargir et c'est elle qui reçoit les messages et demandes de renseignement sur les autres classes.
Marsh Posté le 11-05-2004 à 23:39:32
seabee a écrit : J'avoue que je n'ai pas lu ton problème en entier mais ça ressemble à une absence de classe controleur. Tu lui passe en entrée les différentes classes de ton projet qui doivent interargir et c'est elle qui reçoit les messages et demandes de renseignement sur les autres classes. |
Je vois pas trop ce que tu veux dire...
Marsh Posté le 12-05-2004 à 00:48:02
Hello,
J'ai pas vraiment le temps de chercher la méthode exacte, mais ce qu'il te faut c'est de gérér un évènement sur ta JTable dans l'onglet Rubriques
Lorsque tu clique sur une ligne, ca te remplit un objet ou des variables de la classe avec les informations que tu veux optenir (idRubrique ?)
et lorsque tu click sur Onglet
tu as plus qu'à faire ton affiche par rapport à l'id de la rubrique que tu as enregistrée.
Marsh Posté le 12-05-2004 à 10:16:24
Si t'as pas le temps de revoire ton architecture :
getSelectedRow() sur JTable
Marsh Posté le 12-05-2004 à 20:06:04
Bon j'ai créé la méthode suivante dans ma classe OngletRubriques :
Code :
|
je récupère la valeur retournée dans un paramètre que j'ai ajouté dans le constructeur de la classe OngletEntrées mais ça ne fonctionne toujours pas...
Marsh Posté le 12-05-2004 à 20:39:56
pascal34 a écrit : Si t'as pas le temps de revoire ton architecture : |
C'est bien cette méthode que je dois utiliser je pense, mais quel listener dois-je associer à la table pour rendre la ligne selectionné par un clic de souris ?
Marsh Posté le 13-05-2004 à 09:15:32
RaTo a écrit : C'est bien cette méthode que je dois utiliser je pense, mais quel listener dois-je associer à la table pour rendre la ligne selectionné par un clic de souris ? |
Avec cette méthode : aucun.
Tu l'appelle direct quand t'as besoin de connaître la ligne sélectionnée.
Marsh Posté le 13-05-2004 à 09:34:53
c'est quand même un peu n'importe quoi, même si ça marche..
Effectivement, pour bien faire, il te FAUT une classe contrôleur : son rôle, ça va être de centraliser toutes les données "utiles" autres que celles du carnet d'adresse, à savoir, en l'occurence, la rubrique courante. Ton contrôleur doit être complètement indépendant des vues (les panels) mais les panels doivent pouvoir modifier l'état du contrôleur (mettre à jour la rubrique courante, par exemple) et accéder à l'état de ses diférents attributs (récupérer le n° de la rubrique courante pour en afficher le contenu, ou pour faire des recherches dans la rubrique courante par défaut, par exemple.
Ca te permettrait nottament de modifier ton interface sans avoir beaucoup de choses à recoder. Imagine que tu changes d'avis, et que tu supprimes le paneau "rubriques" pour n'avoir qu'un panneau, avec une drop-down list des rubriques, et en dessous la liste des entrées de la rubrique selectionnée....Ben la modif serait beaucoup plus facile avec une bonne séparation vue/contrôleur.
Marsh Posté le 13-05-2004 à 10:44:53
J'ai utilisé un JTable avec des éditeurs cellule suivant le type de la cellule.
Conclusion : le JTable, c'est l'enfer.
Même le JTree n'est pas qussi compliqué à utiliser...
Marsh Posté le 13-05-2004 à 11:34:42
Pascal : noooon!! Franchement, je suis pas d'accord!! JTable est une pure merveille de conception, à mon sens!! Evidement, ça demande pas mal de travail en amont pour explorer l'API, mais c'est super puissant, en y mettant de la bone volonté!
Il n'en reste pas moins qu'au premier abord, sans avoir trop approfondi la doc, c'est velu!!
Marsh Posté le 13-05-2004 à 11:39:58
[citation=724463,0,11][nom]Il n'en reste pas moins qu'au premier abord, sans avoir trop approfondi la doc, c'est velu!!
[/citation]
C'est tellement velu qu'il faut y aller à la machette !!!
sans compter qu'il ya des problèmes de focus avec les celleditors en combobox.
De façon générale, la conception de swing est bien. Je râle même qu'il n'y ai pas les mêmes choses dans d'autres languages
Marsh Posté le 13-05-2004 à 14:05:30
pas loin (si, en fait, loin!! D Mais bon)
site.voila.fr/gfive
Marsh Posté le 13-05-2004 à 17:28:52
ReplyMarsh Posté le 13-05-2004 à 19:40:18
bah, c'était pour le boulot! Enfin, j'étais pas obligé, mais j'avais envie!
Marsh Posté le 14-05-2004 à 09:10:31
Même le truc avec les graphes ? ou c'était juste un sujet
Marsh Posté le 14-05-2004 à 09:14:00
Le truc avec les graphes, c'était mon projet de fin d'études.
Mais les graphes, c'est du Swing, hein.
Marsh Posté le 14-05-2004 à 09:41:08
euuuh...ben je suis dessus, là présentement maintenant!
A moins que tu ne parles des liens vers les conneries vidéo?? Celles là, ouais, elles sont HS! J'ai pas touché à mon site depuis...voyons....un an?? :^
Marsh Posté le 14-05-2004 à 10:03:44
gfive a écrit : euuuh...ben je suis dessus, là présentement maintenant! |
chez moi ça marche
sympa ta classe GTable
Marsh Posté le 14-05-2004 à 10:48:35
gfive a écrit : euuuh...ben je suis dessus, là présentement maintenant! |
Le comment explique le pourquoi
Marsh Posté le 14-05-2004 à 10:51:55
Le pourquoi j'ai pas touché à mon site???
beuuuh, j'ai changé de taf, donc pas recodé de Java depuis novembre, donc rien de nouveau mettre, et j'ai pas eu de photos à mettre dessus depuis ce temps là : on utilise un ftp pour se les échanger.....Mais pkoi tu me poses ces questions, euuh???
Marsh Posté le 14-05-2004 à 13:45:23
gfive a écrit : Le pourquoi j'ai pas touché à mon site??? |
Non, que le site soit indisponible si tu travaille dessus
Marsh Posté le 14-05-2004 à 13:46:37
Ahhh!!! Nan, quand je disais "je suis dessus", c'est qu'il était affiché dans mon navigateur!
c'est à dire Firefox.
Marsh Posté le 16-05-2004 à 19:23:26
[citation=725982,0,26][nom]gfive a écrit[/nom
c'est à dire Firefox.
[/citation]
Tout pareil, mais j'ai eu un message comme quoi le cota de téléchargement pour la journée était dépassé et que le site serait réactivé dès le lendemain !!!
Marsh Posté le 10-05-2004 à 20:50:50
J'ai un carnet d'adresse qui est géré de la façon suivante :
- un onglet "Carnet" qui contient des informations relatives au carnet (type, nom)
- un onglet "Rubriques" qui contient toutes les rubriques d'un carnet
- un onglet "Entrées" qui contient les entrées (personnes physique ou morale) relatives à une rubrique donnée du carnet.
- un onglet "Recherche"...
Mon problème, c'est que je n'arrive pas à récupérer la rubrique actuellement sélectionnée pour afficher les entrées de cette rubrique...
Comment faire ?
Petite précision sur la structure de mes classes :
- 1 classe OngletRubriques qui hérite de JPanel et qui contient la JTable des rubriques,
- 1 classe OngletEntrees qui hérite de JPanel et qui contient la JTable des entrees,
- 1 classe Fenetre qui hérite de JFrame et qui contient les 2 JPanels (+ les 2 autres JPanel pour l'onglet Carnet et l'onglet Recherche bien sur)
Voila, si qqun voit comment je pourrai récupérer la ligne sélectionnée dans la JTable des rubriques pour afficher les entrées correspondantes dans la JTable des entrées, je le remercie..
edit : on m'a proposé de récuperer l'objet JPanel représentant l'onglet rubriques et de le passer en paramètre du constructeur de l'onglet entrées. C'est une solution mais j'ai l'impression que ça ne marchera pas (j'ai essayé de le mettre en oeuvre) car ça ira peut etre pour la rubrique sélectionnée a l'ouverture du carnet mais après si l'utilisateur clique sur une autre ligne, le changement ne sera pas pris en compte ?
Message édité par RaTo le 16-05-2004 à 22:38:24