我有一个歌曲库,我希望这个选择列表只能放在窗口的左边,因为我想把右边这首歌的其他信息放在窗口的左边。我不确定如何更改JFrame
内JScrollPane
的大小。如何在JFrame中调整JScrollPane的大小?我如何从Java中的文件读取数据?
在这个库中,我希望能够将存储在文件中的歌曲导入到我的歌曲库。现在,我的代码中有一个数组,但我希望能够从文本文件中读取数据,而不是使用此方法。在该文件中,我希望能够存储关于该歌曲的艺术家和专辑信息,但我不希望它显示在歌曲列表中。
String songs[] = {"Song1", "Song2", "Song3", "Song4", "Song5"};
JList list = new JList(songs);
public SongLib(){
JFrame songLibrary = new JFrame("Song Library");
songLibrary.setLocationRelativeTo(null);
songLibrary.setResizable(true);
songLibrary.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
list.addListSelectionListener(new ListSelectionListener(){
public void valueChanged(ListSelectionEvent evt){
int i = list.getSelectedIndex();
if (i != -1)
System.out.println("Selected: " + songs[i]);
else
System.out.println("Choose a song");
}
});
JScrollPane JSPane = new JScrollPane(list);
JSPane.setPreferredSize(new Dimension(100,100));
songLibrary.add(JSPane);
songLibrary.setSize(400,400);
songLibrary.setVisible(true);
}
public static void main(String[] args){
new SongLib();
}
[我应避免使用一套(首选|最大|最小)中的Java Swing大小的方法(http://stackoverflow.com/q/7229226/230513)? – trashgod 2013-02-10 19:53:42
http://docs.oracle.com/javase/tutorial/uiswing/layout/index.html – alnasfire 2013-02-10 19:54:58
对不起,我是这个网站的新手,所以我仍然试图找出如何工作,但我只是做过某事。谢谢! – Jay 2013-02-10 20:18:10