Swing textboxes can't get focus after JFileChooser  
Author Message
QPCSDPTNTIYG





PostPosted: 2004-7-2 22:24:00 Top

java-programmer, Swing textboxes can't get focus after JFileChooser Hi Java guru's,

I have a swing form that has a text field where a directory name can
be entered. Just to its right I have a button that will open the
JFileChooser dialog to allow selection of the directory name from a
dialog.
I can go in and type the directory name into the textbox by hand. So
far, so good.

I can go in and press the button, have the dialog appear, choose a
directory, and have the textbox programatically updated. Again, this
works.

But, if I press the button and choose a directory, I then lose the
ability to use my mouse to access any textboxes on my form. I am able
to use the tab button to move to, and update the textboxes.

I can't then click my mouse on a textbox and be able to enter in data.
Instead, I have to tab to it. The mouse also cannot be used to select
data within a textbox by double clicking or highlighting it. I CAN
hold down the mouse button and scroll right or left and have the
textbox's data shift if the text exceeds the width of the textbox.
But, the textbox appears to be disabled.

Interestingly enough, I AM able to use my mouse to click other BUTTONs
on the page.

So, its just the textboxes that seem affected.

Anyone have a solution or hints?

(btw, I'm using Java 1.4.2.x)

TIA


Here is my button listener:

public void actionPerformed(ActionEvent event)
{
if (event.getSource() == btnRun)
if (areAllFieldsPopulated())
{
lblStatus.setText("Processing");
ExportFunctionalAreas exportFunctionalAreas = new
ExportFunctionalAreas();
exportFunctionalAreas.ExportXml(txtInputFileName.getText(),
txtOutputFileName.getText(), txtElementName.getText());
lblStatus.setText("Finished");
}
else
{
}
else if (event.getSource() == btnSelectFile)
txtInputFileName.setText(FileHandler.OpenFileDialog(txtInputFileName,"Open
Input File","xml","XML files (*.xml)"));
else if (event.getSource() == btnOutputDirectory)
txtOutputFileName.setText(FileHandler.OpenDirectoryDialog(txtOutputFileName));
}


and here is the open directory dialog code:

public static String OpenDirectoryDialog(Component Owner)
{
JFileChooser chooser = new JFileChooser();
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
if (JFileChooser.APPROVE_OPTION == chooser.showOpenDialog(Owner))
return chooser.getSelectedFile().getPath();
else
return null;
}