-3

次のウィンドウを作成するにはどうすればよいですか。

http://postimage.org/image/61aa8hrvb/

書式設定には何を使用しますか? BorderLayoutに似た何か?より良い方法はありますか?

JFrame、JPanel、および JTextArea の組み合わせを使用してみました。次のように:

 public static void doListAllChecks() {
    int transCount = CAObject.getTransCount();

    JFrame frame = new JFrame();
    frame.setVisible(true);
    JPanel content = new JPanel();
    for (int idx = 0; idx < transCount; idx++)
    {
        Transaction tObj = CAObject.getTrans(idx);
        if (tObj != null) {
            if (tObj.getTransId() == Constants.CHECK_ID)
            {
                System.out.println("Check ID " + tObj.getTransNumber() +
                        " Check Amount " + tObj.getTransAmount());
                JTextArea textArea = new JTextArea(5,20);
                textArea.setText("Check " + tObj.getTransAmount());
                content.add(textArea, BorderLayout.EAST);
            }
        }
    }

    frame.setContentPane(content);
    frame.setTitle("Dialog Display");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    frame.pack();
}

ウィンドウの基本的で非常にシンプルなスタイルを作成しようとしています。データはありますが、ウィンドウを作成する方法がわかりません。

編集: ウィンドウをデータで埋める方法を尋ねているのではなく、ウィンドウを生成する方法を尋ねているだけです。固定サイズ(縦横)と枠線だけのようです。ベアボーンウィンドウのようです。

このスタイルの窓に似ていると思うものはありますか?

4

3 に答える 3

2

以下に 1 つの提案を示します (大幅に改善される可能性がありますが、少なくとも出発点は得られます)。

public static void main(String[] args) throws Exception {

    String[][] transactions = new String[][] { { "0", "Check", "50.00" }, { "1", "svc.chrg.", "0.15" } };

    JDialog f = new JDialog();
    JTable table = new JTable(transactions, new String[] { "Id", "Type", "Amount" });

    f.add(new JLabel("List all transactions:", JLabel.CENTER), BorderLayout.NORTH);
    f.add(new JScrollPane(table));
    f.setTitle("Dialog Display");

    table.setPreferredSize(new Dimension(table.getPreferredSize().width, table.getRowHeight()
            * transactions.length));

    f.pack();
    f.setSize(470, 120);
    f.setLocationRelativeTo(null); // Center on screen
    f.setVisible(true);
    f.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
}
于 2012-08-16T21:02:31.990 に答える
1

このスタイルの窓に似ていると思うものはありますか?

ここにある を試してsetUndecorated(true)、1 ピクセルの境界線を追加することもできます。

于 2012-08-17T02:59:06.250 に答える
1

JDialogから始めます(あなたが尋ねたように)

JTableを見て、コンテンツをフォーマットします

BorderLayoutを見てみましょう

于 2012-08-16T19:58:07.377 に答える