if (radioButton.isSelected()) {
textField.addFocusListener(new FocusAdapter() {
public void focusGained(FocusEvent e) {
textField.getFocusListeners();
} public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
}
用意是当选中单选按钮时,输入焦点在textField中,可是这样不行,没有焦点,哪为大哥帮忙解决一下啊,万分感激!!!
textField.addFocusListener(new FocusAdapter() {
public void focusGained(FocusEvent e) {
textField.getFocusListeners();
} public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
}
用意是当选中单选按钮时,输入焦点在textField中,可是这样不行,没有焦点,哪为大哥帮忙解决一下啊,万分感激!!!
if(radioButton.isSelected()){
textField.requestFocus();
}
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;public class FocusLost { private Text textField; public static void main(String[] args) {
try {
FocusLost window = new FocusLost();
window.open();
} catch (Exception e) {
e.printStackTrace();
}
} public void open() {
final Display display = Display.getDefault();
final Shell shell = new Shell();
shell.setSize(236, 129);
shell.setText("SWT Application");
// shell.open(); final Button radioButton = new Button(shell, SWT.RADIO);
radioButton.setText("radio button");
radioButton.setBounds(30, 14, 120, 30);
radioButton.addSelectionListener(new SelectionAdapter() {
public void widgetSelected(final SelectionEvent e) {
if (radioButton.getSelection()) {
textField.setFocus();
}
}
});
textField = new Text(shell, SWT.BORDER);
textField.setBounds(30, 58, 120, 30);
shell.layout();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
}}
if(jRadioButton1.isSelected()){
jTextField1.requestFocus();
}
我自己试过了,完全可以。
只能哭了....
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
public class NewJFrame extends javax.swing.JFrame {
public NewJFrame() {
initComponents();
}
private void initComponents() {
jRadioButton1 = new javax.swing.JRadioButton();
jTextField1 = new javax.swing.JTextField();
getContentPane().setLayout(new java.awt.FlowLayout());
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jRadioButton1.setText("Focus!");
jRadioButton1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0));
jRadioButton1.setMargin(new java.awt.Insets(0, 0, 0, 0));
jRadioButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jRadioButton1ActionPerformed(evt);
}
});
getContentPane().add(jRadioButton1);
jTextField1.setText("jTextField1");
getContentPane().add(jTextField1);
pack();
} private void jRadioButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if(jRadioButton1.isSelected()){
jTextField1.requestFocus();
}
}
public static void main(String args[]) throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
private javax.swing.JRadioButton jRadioButton1;
private javax.swing.JTextField jTextField1;
}
就是这一行:
jRadioButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jRadioButton1ActionPerformed(evt);
}
});
private void jRadioButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if(jRadioButton1.isSelected()){
jTextField1.requestFocus();
}
}