java - 组合框条目未显示在框架上
问题描述
我对组合框有疑问。由于某种原因,我的条目没有显示在下拉列表中。我尝试了 2 种方法,但没有一种方法有效。组合框出现在框架中,但它是空的。我看不出问题出在哪里,并且编译没有返回任何错误。
import javax.swing.*;
import java.awt.*;
public class TemplatesList extends JComboBox<String>
{
public JComboBox faceCombo;
private String[] lista = {"change", "handover"};
private JComboBox wyobr = new JComboBox();
public TemplatesList()
{
/*
faceCombo = new JComboBox();
faceCombo.setEditable(false);
faceCombo.addItem("change request");
faceCombo.addItem("emergancy change request");
faceCombo.addItem("problem request");
faceCombo.addItem("problem handover");
faceCombo.addItem("Major Incident handover");
*/
for (int i=0; i < lista.length; i++)
{
wyobr.addItem(lista[i]);
}
}
}`enter code here`
主班
import javax.swing.*;
import java.awt.*;
import javax.swing.JList;
public class ChoosingPage
{
static JFrame frame;
JLabel choose;
public ChoosingPage ()
{
frame = new JFrame ("Primark's templates");
frame.setSize(400,400);
frame.setLocation(50,50);
// frame.setLayout(new FlowLayout(FlowLayout.CENTER));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.getContentPane().setBackground(Color.WHITE);
TemplatesList lista = new TemplatesList();
frame.add(lista, BorderLayout.SOUTH);
frame.setVisible(true);
}
public static void main (String [] args)
{
new ChoosingPage();
}
}
解决方案
问题是您不需要从已有的 JComboBox 中创建另一个 JComboBox。您正在扩展一个 JComboBox,这意味着您可以访问它的所有方法。
例如:
import javax.swing.*;
import java.awt.*;
public class TemplatesList extends JComboBox<String>
{
private String[] lista = {"change", "handover"};
public TemplatesList()
{
super(); //call JComboBox's constructor. This is standard practice
for (int i=0; i < lista.length; i++)
{
this.addItem(lista[i]);
}
}
}
请注意
我添加super()
到您的构造函数中。但是,这不是解决您问题的方法。但是,我们也不想运行 JComboBox 的构造函数。
推荐阅读
- swiftui - 在 swiftui 中使用 combine 模拟视图模型
- angular - Google Cloud Run 错误:globalThis is not defined
- android - Android:如何在 2021 年处理用户注销 Firebase 云消息传递
- php - 防止人们注册时出现重复的用户名
- javascript - 在 ReactJS 中制作多个页面而不使用 react-dom-router
- java-8 - Java8 -Optional.orElseGet 在 () 与方法调用中定义的供应商
- php - 如何添加多个动态 WHERE 查询?
- uri - 如何使用 Common Lisp 中名为 Quri 的替代库获得相同的 puri:uri-parsed-path 输出?
- episerver - 用于从外部源发布媒体文件的内容管理 API
- javascript - 尽管存在目录,但上传 mp3 文件会导致 XHR 404 错误