在GUI面板上,如何禁用Tab键,目的:按键盘的Tab键时,面板上的控件不做切换。

解决方案 »

  1.   

    看看 Component的 void setFocusable(boolean focusable)
      

  2.   

    import java.util.*;
    import java.awt.*;
    import javax.swing.*;public class Test
    {
        public static void main(String[] args) 
        {
         final JFrame frame = new JFrame();
         frame.setSize(800, 600);
         JButton btn = new JButton("按钮1");
         JButton btn2 = new JButton("按钮2");
         frame.add(btn, BorderLayout.CENTER);
         frame.add(btn2, BorderLayout.SOUTH);
         frame.setFocusTraversalKeys(KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS, Collections.EMPTY_SET);
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         frame.setVisible(true);
        }
    }楼主可以试一下,这时候Shift+Tab其实还是有用的,但Tab已经没用了。
      

  3.   


    这个方法不满足要求,楼主只是想让Tab键不能切换焦点,设置focusable为false以后,永远获取不了焦点了,连鼠标点击也不行了,这有点过了。