大家好!请教一个程序如何设计的问题

534534534 2009-08-05 11:34:52
大家用过Ethereal这个网络分析软件么?现在我要做一个程序,用到的界面和它差不多,即用表格显示一行行的内容,鼠标点击某一行时,下方的面板会显示和该行相关的内容,现在不知道用JAVA该如何下手呵,请教大家了,该使用swing中的哪些组件,怎么完成呢?
...全文
78 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
szmneo 2009-08-12
  • 打赏
  • 举报
回复

package table;

import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import javax.swing.table.DefaultTableModel;

/**
*
* @author Administrator
*/
public class NewJFrame extends javax.swing.JFrame {

/** Creates new form NewJFrame */
DefaultTableModel myTableModel;

public NewJFrame() {
myTableModel = new DefaultTableModel(
new Object[][]{
{"11111", "22222", "33333", "44444"},
{"aaaaa", "bbbbb", "ccccc", "dddddd"},
{"qqqqq", "wwwww", "eeeee", "rrrrr"},
{"yyyy", "uuuuu", "iiiii", null}
},
new String[]{
"Title 1", "Title 2", "Title 3", "Title 4"
});
initComponents();
jTable1.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
int i =jTable1.getSelectedRow();
jTextArea1.setText("you just selected row NO."+i);
}
});
}

/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {

jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();
jScrollPane2 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jTable1.setModel(myTableModel);
jScrollPane1.setViewportView(jTable1);

jTextArea1.setColumns(20);
jTextArea1.setRows(5);
jScrollPane2.setViewportView(jTextArea1);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(15, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 375, Short.MAX_VALUE))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 145, Short.MAX_VALUE)
.addContainerGap())
);

pack();
}// </editor-fold>

/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {
new NewJFrame().setVisible(true);
}
});
}

// Variables declaration - do not modify
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JTable jTable1;
private javax.swing.JTextArea jTextArea1;
// End of variables declaration
}

酒浪子 2009-08-11
  • 打赏
  • 举报
回复
没用过,学习!
lewypd 2009-08-11
  • 打赏
  • 举报
回复
学习一下!
kuyesuifeng 2009-08-11
  • 打赏
  • 举报
回复
应该用JTable,不过要重写一些方法
obama0909 2009-08-11
  • 打赏
  • 举报
回复
那个没用过不过用JLabel JTextArea再加些代码可以实现那样的 主要是鼠标Event
zl3450341 2009-08-05
  • 打赏
  • 举报
回复
没用过 帮顶
knightzhuwei 2009-08-05
  • 打赏
  • 举报
回复
Ethereal?没用过

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧