【问题标题】:Java- Combobox request focus not workingJava-组合框请求焦点不起作用
【发布时间】:2017-03-30 06:29:23
【问题描述】:

我有一个组合框,我想请求专注于启动,但它不起作用。它是我的 GUI 中的第三个元素,我希望它成为开始时的重点。 我将它放在添加到内容窗格的下方,因为我认为它是正确的,但它什么也没做。

JComboBox comboBox_projekt = new JComboBox();
comboBox_projekt.setName("comboBox_projekt");
comboBox_projekt.setEditable(true);
comboBox_projekt.setBounds(118, 125, 136, 20);
String empty = "";
comboBox_projekt.addItem(empty);

String [ ] AktivProjektJSON = new String[100];  
String [ ] NameProjektJSON = new String[100];   
String [ ] KeyProjektJSON = new String[100];    

JSONObject ProjekteObject = new JSONObject(json_felder.get("projektdaten").toString());
int ProjektJSONlength = ProjekteObject.length() - 1;
for (int key = 0; key<=ProjektJSONlength; key++ ) {
    JSONObject jsonObjectProjekteObjekt = ProjekteObject.getJSONObject(String.valueOf(key));  
    AktivProjektJSON[key] = jsonObjectProjekteObjekt.getString("aktiv");  // String auslesen!!!                         
    NameProjektJSON[key] = jsonObjectProjekteObjekt.getString("projektname");  // String auslesen!!!
    KeyProjektJSON[key] = jsonObjectProjekteObjekt.getString("pk_pr_id");  // String auslesen!!!


     if(AktivProjektJSON[key].equals("1")){
           comboBox_projekt.addItem(NameProjektJSON[key]);
       }
}
//contentPane.add(comboBox_projekt);
AutoCompleteDecorator.decorate(comboBox_projekt);       
comboBox_projekt.getEditor().getEditorComponent().addKeyListener(new KeyAdapter() {
    @Override
    public void keyPressed(KeyEvent e) {
        that.customKeyevent(e);
    }
});

this.contentPane.add(comboBox_projekt);

comboBox_projekt.addActionListener (new ActionListener () {
    public void actionPerformed(ActionEvent e) {
        try {
            createZusatz(comboBox_projekt, NameProjektJSON, KeyProjektJSON, ProjektJSONlength );
        } catch (JSONException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        } catch (IOException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
    }
});

comboBox_projekt.requestFocus();

提前致谢:)

【问题讨论】:

  • 组合框可见后尝试调用requestFocus
  • 有帮助,谢谢!

标签: java combobox request focus


【解决方案1】:

试试这个:

 SwingUtilities.invokeLater(new Runnable() {
     @Override
     public void run() {
          combo.requestFocus();
       }
    });

【讨论】:

    猜你喜欢
    • 2013-07-09
    • 2010-11-16
    • 2017-02-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    • 1970-01-01
    相关资源
    最近更新 更多