Codename一个TableModel内部的循环

问题描述 投票:1回答:1

我正在尝试在TableModel内放置一个循环,以循环一个arraylist内的所有文章以插入表内的所有行,以便我可以将其添加到表单中并向用户显示所有文章公共类ListArticlesForm扩展Form {

public ListArticlesForm(Form previous) {
    setTitle("List all articles");
    SpanLabel sp = new SpanLabel();
    sp.setText(ServiceTask.getInstance().getAllArticles().toString());

    ArrayList<Articles> articles = ServiceTask.getInstance().getAllArticles();

    TableModel model = new DefaultTableModel(new String[]{"name", "description", "label", "quantity", "rating", "rate"}, 

            new Object[][]{
        {
           // I WANT TO PLACE A FOR HERE (this is showing only the first row ! 
            articles.get(0).getName(), articles.get(0).getDescription(), articles.get(0).getLabel(), articles.get(0).getQuantity(), articles.get(0).getRating(), add(createStarRankSlider())

        },});

    Table table = new Table(model);
    add(table);
    getToolbar().addMaterialCommandToLeftBar("", FontImage.MATERIAL_ARROW_BACK, e -> previous.showBack());
}

}

java codenameone
1个回答
0
投票

您不能将数组创建为数组内部的for循环。您需要尽快进行处理。

Object[][] rows = new Object[articles.size()][];

for(int iter = 0 ; iter < rows.length ; iter++) {
    rows[iter] = new Object[] {
         articles.get(iter).getName(), articles.get(0).getDescription(), articles.get(0).getLabel(), articles.get(0).getQuantity(), articles.get(0).getRating(), add(createStarRankSlider())
    };
}

TableModel model = new DefaultTableModel(new String[]{"name", "description", "label", "quantity", "rating", "rate"}, rows);
最新问题
© www.soinside.com 2019 - 2025. All rights reserved.