javaguijlist应用程序
我是JavaGUI的初学者 我正在尝试使用JList构建用户界面,其中用户从已定义的列表中选择一个项目,与该特定项目相关的面板将显示在列表的右侧。这是我的目标。虽然,我想实现的第一个是能够显示某些面板时,某些菜单项被选中,我觉得很难由于我的 这就是我到目前为止所做的javaguijlist应用程序,java,swing,user-interface,jlist,Java,Swing,User Interface,Jlist,我是JavaGUI的初学者 我正在尝试使用JList构建用户界面,其中用户从已定义的列表中选择一个项目,与该特定项目相关的面板将显示在列表的右侧。这是我的目标。虽然,我想实现的第一个是能够显示某些面板时,某些菜单项被选中,我觉得很难由于我的 这就是我到目前为止所做的 import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import javax.swing.JFrame; import javax.
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.ListSelectionModel;
public class MainGUI extends JFrame{
JList list = new JList(
new String[]{"Create Account","Borrow Book","Return Book",
"Add Book","Delete Book","Display Details"}
);
public MainGUI()
{
JPanel panel = new JPanel();
JPanel panel1 = new JPanel();
list.setForeground(Color.RED);
list.setBackground(Color.WHITE);
list.setSelectionForeground(Color.GREEN);
list.setSelectionBackground(Color.LIGHT_GRAY);
list.setFixedCellWidth(150);
list.setFixedCellHeight(50);
list.setFont(new Font("Serif",Font.BOLD,16));
list.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
panel.add(list);
add(panel,BorderLayout.WEST);
}
public static void main(String[] args) {
MainGUI frame = new MainGUI();
frame.setSize(500, 350);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
你要找的是一张“卡片布局”。卡片布局就像一副卡片,你可以将最上面的面向用户的卡片与卡片组中的另一张卡片交换。牌组中的每一张牌都是另一个JPanel,其中包含各种GUI。您需要一个面板来创建帐户、借书、还书等。Oracle网站上的Java教程可以很好地指导您完成这一过程,但他们使用的是组合框,而不是像您一样的列表 在您的情况下,您可能希望将卡片布局放在边框布局的中心面板中。然后使用您的列表作为触发器来更改显示的卡。如果您需要有关如何检测用户何时在列表中选择某项内容的帮助,请参阅Oracle的JList教程