界面卡片布局,求代码

Bettygonna 2013-07-05 11:54:27

我想让下面白色区域用卡片布局,对上面的菜单项做出反应,选择不同菜单项显示不同的页
界面代码如下:高手帮忙啊

package gui;

import handle.Sql;

import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Color;
import java.awt.Container;
import java.awt.Graphics;
import java.awt.TextArea;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JTextArea;

public class Student extends JFrame {

/**
*
*/

private static final long serialVersionUID = 1L;
JMenuBar jmb;
JMenu jm1,jm2,jm3,jm4;
JMenuItem jmi1,jmi2,jmi3,jmi4;
JPanel jp,jptab;
JButton img ;
Container con = this.getContentPane();
JButton jlb = new JButton("安全退出");
JLabel jlb1,jlb2,jlb3,jlb4,jlb5;
Sql sql = new Sql();
String name;
StuListener sl = new StuListener(this);

CardLayout myCard = null;
JPanel jpc = null;

Student(String name){

this.setTitle("欢迎"+name+"同学登录");
this.setSize(900,700);
this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
handle.SetLocation.centerShell(this);
this.setResizable(false);
this.name =name;
initialize();



}
private void initialize(){
jmb = new JMenuBar();

jmb.setBackground(Color.magenta);//实例化组件并添加监听
jm1 = new JMenu("信息查询");

jm2 = new JMenu("修改信息");
jm3 = new JMenu("选修课程");

jmi1 = new JMenu("个人帐号信息");
jmi1.addItemListener(sl);
jmi2 = new JMenu("成绩查询");
jmi2.addItemListener(sl);
jmi3 = new JMenu("密码修改");
jmi4 = new JMenu("学期选课");

jm1.add(jmi1);
jm1.add(jmi2);


jm2.add(jmi3);
jm3.add(jmi4);
jmb.add(jm1);
jmb.add(jm2);
jmb.add(jm3);
this.setJMenuBar(jmb);

con.setBackground(Color.white);

jlb.setForeground(Color.blue);
jlb.setBounds(750,10,100, 30);
con.setLayout(null);

String[] str = sql.getInfo(name);

jlb1 = new JLabel("学 号:"+str[0]);
jlb1.setBounds(230,20,200,20);
jlb2 = new JLabel("姓 名:"+str[1]);
jlb2.setBounds(230,60,200,20);
jlb3 = new JLabel("年 龄:"+str[2]);
jlb3.setBounds(230,100,200,20);

jlb4 = new JLabel("电 话:"+str[3]);
jlb4.setBounds(230,140,200,20);
String dpt;
if(str[4].equals(1+""))
dpt="信息技术学院";
else dpt="网络工程";
jlb5 = new JLabel("学 院:"+dpt);
jlb5.setBounds(230,180,200,20);


jp = new JPanel();

jp.setBounds(0,0,900,200);

img = new JButton();
img.setBounds(0,0,200,200);
img.setIcon(new ImageIcon("img/"+name+".jpg"));

jp.setLayout(null);
jp.setBackground(Color.pink);
jp.add(img);
jp.add(jlb1);
jp.add(jlb2);
jp.add(jlb3);
jp.add(jlb4);
jp.add(jlb5);
jp.add(jlb);
jlb.addActionListener(sl);

con.add(jp);
//con.add(getPanel(),BorderLayout.CENTER);

}
JPanel getPanel(){
jpc = new JPanel();

myCard = new CardLayout();
jptab.setLayout(myCard);
JPanel jp1 = new JPanel();
jp1.add(new JLabel("11111111"));
jpc.add(jp1,"second");

JPanel jp2 = new JPanel();
jp2.add(new JButton("lalallallalal"));
jp2.setBackground(Color.blue);

jpc.add(jp2,"first");

return jp;

}

/*public static void main(String [] args){
new Student("dfsda");
}

*/

}
...全文
133 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bettygonna 2013-07-06
  • 打赏
  • 举报
回复
package gui; import java.awt.BorderLayout; import java.awt.CardLayout; import java.awt.Color; import java.awt.Container; import java.awt.Graphics; import java.awt.TextArea; import java.awt.Toolkit; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JMenu; import javax.swing.JMenuBar; import javax.swing.JMenuItem; import javax.swing.JPanel; import javax.swing.JTextArea; public class Student extends JFrame { private static final long serialVersionUID = 1L; JMenuBar jmb; JMenu jm1,jm2,jm3,jm4; JMenuItem jmi1,jmi2,jmi3,jmi4; JPanel jp,jptab; JButton img ; Container con = this.getContentPane(); JButton jlb = new JButton("安全退出"); JLabel jlb1,jlb2,jlb3,jlb4,jlb5; String name; CardLayout myCard = null; JPanel jpc = null; Student(String name){ this.setTitle("欢迎"+name+"同学登录"); this.setSize(900,700); this.setVisible(true); this.setDefaultCloseOperation(EXIT_ON_CLOSE); this.setResizable(false); this.name =name; initialize(); } private void initialize(){ jmb = new JMenuBar(); jm1 = new JMenu("信息查询"); jm2 = new JMenu("修改信息"); jm3 = new JMenu("选修课程"); jmi1 = new JMenu("个人帐号信息"); jmi2 = new JMenu("成绩查询"); jmi3 = new JMenu("密码修改"); jmi4 = new JMenu("学期选课"); jm1.add(jmi1); jm1.add(jmi2); jm2.add(jmi3); jm3.add(jmi4); jmb.add(jm1); jmb.add(jm2); jmb.add(jm3); this.setJMenuBar(jmb); con.setBackground(Color.white); jlb.setForeground(Color.blue); jlb.setBounds(750,10,100, 30); con.setLayout(null); jlb1 = new JLabel("学 号:"); jlb1.setBounds(230,20,200,20); jlb2 = new JLabel("姓 名:"); jlb2.setBounds(230,60,200,20); jlb3 = new JLabel("年 龄:"); jlb3.setBounds(230,100,200,20); jlb4 = new JLabel("电 话:"); jlb4.setBounds(230,140,200,20); jlb5 = new JLabel("学 院:"); jlb5.setBounds(230,180,200,20); jp = new JPanel(); jp.setBounds(0,0,900,200); jp.setLayout(null); jp.setBackground(Color.pink); jp.add(img); jp.add(jlb1); jp.add(jlb2); jp.add(jlb3); jp.add(jlb4); jp.add(jlb5); jp.add(jlb); jlb.addActionListener(sl); con.add(jp); } /*public static void main(String [] args){ new Student("dfsda"); } */ } 这是界面代码

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧