簡體   English   中英

如何格式化JList中的文本?

[英]How do I format text within a JList?

我在JList有無法正確格式化的項目。

我這樣做是為了創建此方法:

private String formatString(String string){
     string = string.trim();

    int SEPERATOR = 20 - string.length();

    for(int i = 0; i<SEPERATOR; i++){

        string = string + " ";
    }

    return string;
}

當我使用系統輸出打印將JList的項目輸出到輸出窗口時,它的格式很好,但是在我的GUI中卻沒有:

例

我不確定這是否對您有幫助,但是我將數據加載到列表中的方法如下:

    DefaultListModel m = new DefaultListModel();

    while (rs.next()){

        String Expense = rs.getString("Expense");
        String Cost = "£"+rs.getString("Cost");
        String PurchaseDate = rs.getString("Purchase_Date");
        String Description = rs.getString("Description");

        Expense = formatString(Expense);
        Cost = formatString(Cost);
        PurchaseDate = formatString(PurchaseDate);
        Description = formatString(Description);


        String Row = Expense+Cost+PurchaseDate+Description;

        m.addElement(Row);
        System.out.println(Row);
    }

正如已經建議的那樣,最好的解決方案是使用JTable 閱讀Swing教程中有關如何使用表的部分, 獲取更多信息和工作示例。

當我使用系統輸出打印將jlist中的項目輸出到輸出窗口時,它的格式很好,但是在我的GUI中卻沒有:

要回答您的問題,您需要使用等寬字體。

list.setFont( new Font("monospaced", Font.PLAIN, 10) );

另外,請使用標准Java變量名稱。 變量名稱(費用,費用...)不應以大寫字母開頭。

您可以使用\\ t(如果字段的文本太長,則可能必須使用/ t / t)而不是使用空格或使用JTable

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM