Swing常用技巧

 //为表格添加鼠标监听
 table.addMouseListener(new MouseAdapter()
 {
   @Override
   public void mouseClicked(MouseEvent e)
   {
     if (SwingUtilities.isRightMouseButton(e)) // 如果是右键点击的话
      {
        int[] selectedRows = table.getSelectedRows();

        //如果没有选择表格的任一行,则不处理
         if (selectedRows.length < 1)
        {
           return;
        }
                   
        int columnIndex = table.columnAtPoint(e.getPoint());
        table.setColumnSelectionInterval(columnIndex, columnIndex);// 如果光标所在列
         int modelCol = table.convertColumnIndexToModel(columnIndex);// 转换为Model列
         if (COLUMN_INDEX.NAME_COL == modelCol)
        {
           JPopupMenu popupMenu = createPopMenu();
           popupMenu.show(table, e.getX(), e.getY());
        }
     }
		      
     // 如果是左键双击的话
      if (SwingUtilities.isLeftMouseButton(e) && e.getClickCount() == MouseEvent.BUTTON2)
      {
	//......
      }
    }
 });

你可能感兴趣的:(swing)