2009-07-07 7 views
0

J'ai deux JFrames dans mon application. Dans le premier JFrame il y a un JTable. Lorsque l'utilisateur clique sur la JTable, je veux obtenir l'objet de la ligne cliquée, puis ouvrir le deuxième JFrame et remplir ses champs de données avec les éléments de cet objet.Comment transférer des objets de Jframe vers un autre Jframe?

Alors, comment puis-je transférer des objets entre JFrames? Quelqu'un peut-il me donner un exemple pour cela?

Répondre

1
public void mouseClicked(MouseEvent mouseEvent) { 
    int row = getClickedRow(mouseEvent); /* dummy code */ 
    Object rowObject = getRowObject(row); /* more dummy code */ 
    JFrame2 jframe2 = ... /* get reference to jframe2 */ 
    jframe2.setRowObject(rowObject); 
    jframe2.setVisible(true); 
} 

JFrame2 devrait probablement étendre JFrame et contiennent des choses supplémentaires qui traite l'objet de la ligne de quelque manière que bon vous semble.

0

Généralement, une application ne comportera qu'une seule JFrame principale. Donc, vous devriez utiliser un JDialog comme une fenêtre enfant, pas un JFrame.

Quelqu'un peut-il donner un exemple pour cela?

Eh bien, les étapes semble simple:

a) ajouter un MouseListener à la table

b) convertir le clic de la souris sur une ligne et/ou colonne

c) obtenir le données de la table

d) créer un JDialog en utilisant les données en tant que paramètre

ainsi quelles étapes avez-vous des problèmes avec? Postez votre code montrant ce que vous avez fait.

Il s'agit d'un Short, Self Contained, Correct (Compilable), Example (SSCCE). L'exemple doit utiliser des données codées en dur, pas des données d'une base de données car nous n'avons pas accès à votre base de données.

Questions connexes