JTable显示的记录中如何写双击某一行就会弹出窗口的事件?

ihyinger 2003-08-22 11:25:50
我用JTable显示多行数据。现在正制作修改某一行数据的功能。
想用鼠标双击某一行,弹出一个窗口,请问这个某一行的双击事件怎么写???
...全文
201 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ihyinger 2003-08-22
  • 打赏
  • 举报
回复
谢谢两位了:) 分数不多还请多包含阿:) 谢谢
duoshanx 2003-08-22
  • 打赏
  • 举报
回复
再说弹出一个窗口的问题:
哈哈,窗口肯定不用说,
其实这个问题就是要得到你所双击的行和列:
rown = xx.getSelectedRow();
coln = xx.getSelectedColumn();
ok拉!

duoshanx 2003-08-22
  • 打赏
  • 举报
回复
先说双J的问题:
JAVA只能得到mouseClick事件,所以如果得到双J可以这样:

myTable.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
if (e.getClickCount()==2){
System.out.println("click count equals to 2");
}
});

有可能你感觉不爽,
可以改进如下:
public void mouseClicked(MouseEvent evt) {
long clickTime = System.currentTimeMillis();
long clickInterval = clickTime - firstClickTime;
if (clickInterval < 300) {
displayStr = "Double Click!! (Interval = "
+ clickInterval + ")";
firstClickTime = 0;
} else {
displayStr = "Single Click!!";
firstClickTime = clickTime;
}
repaint();
}
cbhyk 2003-08-22
  • 打赏
  • 举报
回复
tree.addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent e)
{
if(SwingUtilities.isLeftMouseButton(e) && e.getClickCount() == 2)
openDialog();
}
});

public void openDialog()
{
TreePath selectedPath = tree.getSelectionPath();
if(selectedPath == null)
return;
TreeNode selectedNode = (TreeNode) selectedPath.getLastPathComponent();
if(selectedNode == null)
return;
else
打开对话框;
}

62,614

社区成员

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

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