我有一个 JTextField 代表一周中的一天,例如“星期五”,当我点击它时,我想有一个选择,例如“月 1 日、月 3 日或月末”,所以我想出了两个选项:
<1> 按住一个数字或字母,比如说“2”或“L”,然后点击“Friday”表示每月的第二个(或最后一个)星期五,在这种情况下,如何在鼠标点击时获取数字JTextField ?
<2> 右键单击“星期五”JTextField,下拉菜单,带有按钮或复选框让我选择,然后关闭菜单并获取值。
到目前为止,我的代码看起来像这样:
private final JTextField[] dayHeadings=new JTextField[]{new JTextField("Su"),
new JTextField("Mo"),
new JTextField("Tu"),
new JTextField("We"),
new JTextField("Th"),
new JTextField("Fr"),
new JTextField("Sa")};
......
for (int ii=0; ii < dayHeadings.length; ii++)
{
dayHeadings[ii].setEditable(false);
dayHeadings[ii].setFocusable(false);
dayHeadings[ii].addMouseListener(new MouseAdapter() { public void mouseClicked(final MouseEvent evt) { onHeadingClicked(evt); } });
add(dayHeadings[ii],new AbsoluteConstraints(x,38,X_Cell_Size+1,Y_Cell_Size+1));
}
......
void onHeadingClicked(final java.awt.event.MouseEvent evt)
{
final javax.swing.JTextField fld=(javax.swing.JTextField) evt.getSource();
...
}
如何执行上述任一操作,它们在 Java 中是否可行?