3

I am trying to create an UI which has two panes.

In the left pane I display the list of files and right pane displays the contents.

Now, I want list of files in the left pane to look as a normal list. But when I click an entry in this list, the contents of the particular file should be displayed in the right pane.

How can I achieve this using Swing?

4

6 に答える 6

3

Check out this tutorial. It explains how to use lists in Swing, including event handlers that are necessary to register for click events.

于 2013-01-31T11:52:32.117 に答える
3

このJTree の例を見たいと思うかもしれません。

于 2013-01-31T11:55:55.260 に答える
3

まず、まだ試していませんよね?Swing は、リスナーに関連するほとんどすべての入力を行います。マウス リスナーを確認するか、以下の awnser を調整します。

https://stackoverflow.com/a/4344762/258418

完全を期すために、ここに引用します。

String[] items = {"A", "B", "C", "D"};
JList list = new JList(items);

list.addMouseListener(new MouseAdapter() {
    public void mouseClicked(MouseEvent evt) {
        JList list = (JList)evt.getSource();
        if (evt.getClickCount() == 2) {
            int index = list.locationToIndex(evt.getPoint());
        } else if (evt.getClickCount() == 3) {   // Triple-click
            int index = list.locationToIndex(evt.getPoint());

        }
    }
});

シングルクリックでもできると思います...そうでない場合は、コメントを書いてください

于 2013-01-31T11:57:39.727 に答える
3

参照用のいくつかの例:

  • FileBrowser左側に を使用JTreeし、右側にネストされた詳細パネルを使用します。

  • ImageDisplayJFileChooser左側にカスタムを埋め込み、右側にスクロール可能な画像を表示します。

  • CheckTableJTable左に aを、右に a を示しますDisplayPanel

于 2013-01-31T11:58:24.000 に答える
3

を使用しJList.addListSelectionListener(ListSelectionListener)ます。

その他の例については、「リスト選択リスナーの作成方法」を参照してください。

于 2013-01-31T11:58:55.710 に答える