lilianseek 2013-12-23 08:27
浏览 1708

java swing对话框关闭后,焦点定位

背景:我用java swing开发了一个pos收银台系统,大部分的数据输入是在JTable中,当按快捷键F3时需弹出一个银行卡收银的对话框。

问题:
当在对话框中确定交易金额后,按确定按钮,对话框要关闭,并且判断是否交易完毕,如果是,则重新将焦点定位在指定位置。

说明:
我的做法是:在对话框关闭后,进行处理焦点,代码如下:
this.addWindowListener(new WindowAdapter() {
@Override
public void windowClosed(WindowEvent e) {
if(isPayConfrim){ //交易完毕
isPayConfrim=false;
if(ViewCommonValue.cashAmounts>ViewCommonValue.cashRecipt){
JOptionPane.showMessageDialog(null,"结算金额结算金额大于现金收款金额");
PayAssignPanel.isLeaveTb = true;
PayAssignPanel.payTable.getCellEditor().stopCellEditing();
PayPanel.cashReceiptText.requestFocus();//焦点定位
PayPanel.cashReceiptText.selectAll();
}else{
ViewCommonValue.paymentConfirm();
return;
}

            } else{//否则,焦点仍定位在原来表格中的位置
                JTable tb = PayAssignPanel.payTable;
                tb.requestFocus();
                tb.editCellAt(2, 2);
                tb.changeSelection(2, 2, false, false);
            }

}

但是结果没有达到我要的效果,请问哪位热心人指教指教!!!谢谢
如果可以教教swing中自由如何控制焦点,就更好了~~~

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 关于#hadoop#的问题
    • ¥15 (标签-Python|关键词-socket)
    • ¥15 keil里为什么main.c定义的函数在it.c调用不了
    • ¥50 切换TabTip键盘的输入法
    • ¥15 可否在不同线程中调用封装数据库操作的类
    • ¥15 微带串馈天线阵列每个阵元宽度计算
    • ¥15 keil的map文件中Image component sizes各项意思
    • ¥20 求个正点原子stm32f407开发版的贪吃蛇游戏
    • ¥15 划分vlan后,链路不通了?
    • ¥20 求各位懂行的人,注册表能不能看到usb使用得具体信息,干了什么,传输了什么数据