title: Assign string array to comboBox in java
body: <p>I want to assign <code>dir</code> array to <code>comboBox</code>. Is there any error in my code. I tried to display the <code>dir</code> array it contains the values but cannot assign it comboBox. Here is the code.</p>
  
  <pre><code>import java.awt.EventQueue;
  
  
  public class ExpenseManager {
  
  private JFrame frame;
  private JTextField txtUserName;
  private JLabel lblNewUserName; 
  private JButton btnDone;
  private JButton btnLogin;
  private JComboBox&lt;?&gt; comboBox;
  private String[] dir = new String[100];
  private String[] hello = {"Hii", "Hello"};
  
  /**
   * Launch the application.
   */
  public static void main(String[] args) {
      EventQueue.invokeLater(new Runnable() {
          public void run() {
              try {
                  ExpenseManager window = new ExpenseManager();
                  window.frame.setVisible(true);
              } catch (Exception e) {
                  e.printStackTrace();
              }
          }
      });
  }
  
  /**
   * Create the application.
   */
  public ExpenseManager() {
      initialize();
  }
  
  /**
   * Initialize the contents of the frame.
   */
  //@SuppressWarnings("unchecked")
  private void initialize() {
      frame = new JFrame();
      frame.setBounds(100, 100, 450, 300);
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.getContentPane().setLayout(null);
  
      JButton btnNewUser = new JButton("New User");
      btnNewUser.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
              lblNewUserName.setVisible(true);
              txtUserName.setVisible(true);
              btnDone.setVisible(true);
          }
      });
      btnNewUser.setBounds(23, 34, 89, 23);
      frame.getContentPane().add(btnNewUser);
  
      txtUserName = new JTextField();
      txtUserName.setBounds(240, 63, 134, 20);
      frame.getContentPane().add(txtUserName);
      txtUserName.setVisible(false);
      txtUserName.setColumns(10);
  
      lblNewUserName = new JLabel("Enter New UserName");
      lblNewUserName.setBounds(240, 38, 134, 14);
      lblNewUserName.setVisible(false);
      frame.getContentPane().add(lblNewUserName);
  
      btnDone = new JButton("Done");
      btnDone.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent e) {
              String newUserName = txtUserName.getText();
              if(!newUserName.isEmpty())
              {
                  File f = new File("S:/Expense/" + newUserName);
                  if (f.exists() &amp;&amp; f.isDirectory()) {
                     JOptionPane.showMessageDialog(null, "User already exists");
                     txtUserName.setText(null);
                  }
                  else{
                      boolean success = (new File("S:/Expense/" + newUserName)).mkdir();
                      if(!success){
                          JOptionPane.showMessageDialog(null, "Unable to register");
                      }else{
                          JOptionPane.showMessageDialog(null, "User registered Successfully");
                      }
                  }
              }
              else
              {
                  JOptionPane.showMessageDialog(null, "Kindly enter User Name", "Invalid User Name", JOptionPane.ERROR_MESSAGE);
              }
          }
      });
      btnDone.setBounds(240, 103, 89, 23);
      btnDone.setVisible(false);
      frame.getContentPane().add(btnDone);
  
      btnLogin = new JButton("Login");
      btnLogin.addActionListener(new ActionListener() {
          public void actionPerformed(ActionEvent arg0) {
              File[] directories = new File("S:/Expense/").listFiles();
  
              for(int i = 0; i &lt; directories.length; i++)
              {
                  dir[i] = directories[i].getName();
              }
  
              comboBox.setVisible(true);
  
          }
      });
      btnLogin.setBounds(23, 68, 89, 23);
      frame.getContentPane().add(btnLogin);
  
      comboBox = new JComboBox&lt;Object&gt;(dir);
      comboBox.setBounds(24, 138, 72, 20);
      comboBox.setSelectedIndex(1);
      comboBox.setVisible(false);
      frame.getContentPane().add(comboBox);
  
       }
    }
  </code></pre>