我正在尝试使用每个列部分的弹出帮助菜单创建一个JTable。例如,您右键单击第一列标题,弹出一个JTextArea,说明该列的用途以及应该将哪种类型的数据放入其中。我有以下代码建立JTable和mouselistener事件。有没有办法可以使用ColumnAtPoint()编写一个If语句,这样如果右键单击发生在第1列,那么它会打开我的JTextArea?然后我可以为其他列创建第二个和第三个单独的JTextAreas。
final DefaultTableModel tblModel = new DefaultTableModel(null,colHdrs);
final JTable table = new JTable(tblModel);
table.getTableHeader()。addMouseListener(new MouseAdapter(){
@Override
public void mousePressed(MouseEvent e) {
if (SwingUtilities.isRightMouseButton(e))
{
JOptionPane.showMessageDialog(null, textArea1, "Type", JOptionPane.PLAIN_MESSAGE);
}
}
});
答案 0 :(得分:2)
尝试使用JToolTip我认为它可能更适合您的使用;):)!
你也可以添加例如到了
JLabel label = new JLabel(“我的号码标签”);
工具提示文字,如:
label.setToolTipText(“只允许1-10的数字!”);
这也适用于其他摆动的东西,你可以试试:)。 只要将鼠标悬停在标签上,文本就会立即显示。