当前位置: 技术问答>java相关
请看一下这个程序,有两个问题。谢谢
来源: 互联网 发布时间:2015-04-04
本文导语: import java.awt.*; import javax.swing.*; import java.awt.event.*; public class MyFoucs extends JFrame{ public static void main(String[] args){ MyFoucs m=new MyFoucs(); m.setSize(200,300); m.setVisible(true); m.addWindow...
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class MyFoucs extends JFrame{
public static void main(String[] args){
MyFoucs m=new MyFoucs();
m.setSize(200,300);
m.setVisible(true);
m.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public MyFoucs () {
super();
Container c=getContentPane();
c.setLayout(new FlowLayout());
c.add(text1);
c.add(text2);
c.add(okButton);
okButton.requestFocus();
}
public JTextField text1=new JTextField("text1");
public JTextField text2=new JTextField("text2");
public JButton okButton=new JButton("ok");
}
问题1:我已经okbutton.requestFocus(),窗口打开后okbutton依然没有焦点。
问题2:按下tab键,焦点如何按照okbutton,text2,text1顺序转换。
我已经查找过论坛,没有发现合适的答案。谢谢
import javax.swing.*;
import java.awt.event.*;
public class MyFoucs extends JFrame{
public static void main(String[] args){
MyFoucs m=new MyFoucs();
m.setSize(200,300);
m.setVisible(true);
m.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public MyFoucs () {
super();
Container c=getContentPane();
c.setLayout(new FlowLayout());
c.add(text1);
c.add(text2);
c.add(okButton);
okButton.requestFocus();
}
public JTextField text1=new JTextField("text1");
public JTextField text2=new JTextField("text2");
public JButton okButton=new JButton("ok");
}
问题1:我已经okbutton.requestFocus(),窗口打开后okbutton依然没有焦点。
问题2:按下tab键,焦点如何按照okbutton,text2,text1顺序转换。
我已经查找过论坛,没有发现合适的答案。谢谢
|
1.
加个方法
public void setFocus(){
okButton.requestFocus();
}
然后再m.setVisible(true);后调用
2.okbutton.setNextFocusableComponent(text2);
加个方法
public void setFocus(){
okButton.requestFocus();
}
然后再m.setVisible(true);后调用
2.okbutton.setNextFocusableComponent(text2);