大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
我提供给你思路,具体代码我就不写了。
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的阳新网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
首先你肯定有两个JFrame,假设jf1是登录窗口,jf2是主界面。那么在jf1内如果登录成功的话就必须创建主界面jf2,然后jf2设置为显示即jf2.setVisible(true);
jf1把资源释放到就行了:
jf1.dispose();
jf1 = null;
在你的代码中:
if(rs1.next()){
setVisible(false);
new mainm();
return;
}
如果你的mainm构造函数里写了setVisible(true);的话就改成如下代码就行了:
if(rs1.next()){
dispose();
new mainm();
}
你干嘛要return呢?
希望对你能有所帮助。
完整代码完全是按你要求写的。\x0d\x0aimport java.awt.Container;\x0d\x0aimport java.awt.event.ActionEvent;\x0d\x0aimport java.awt.event.ActionListener;\x0d\x0aimport javax.swing.JButton;\x0d\x0aimport javax.swing.JFrame;\x0d\x0aimport javax.swing.JLabel;\x0d\x0aimport javax.swing.JPanel;\x0d\x0apublic class TESTswing extends JPanel implements ActionListener{\x0d\x0a \x0d\x0a JPanel p1 = new JPanel();\x0d\x0a JPanel p2 = new JPanel();\x0d\x0a JPanel p3 = new JPanel();\x0d\x0a JButton btn1 = new JButton("Button1");\x0d\x0a JButton btn2 = new JButton("Button2");\x0d\x0a public TESTswing()\x0d\x0a {\x0d\x0a p1.add(btn1);\x0d\x0a p1.add(btn2);\x0d\x0a p2.add(new JLabel("I’m is p2"));\x0d\x0a p3.add(new JLabel("I’m is p3"));\x0d\x0a \x0d\x0a p2.setVisible(false);\x0d\x0a p3.setVisible(false);\x0d\x0a this.add(p1);\x0d\x0a this.add(p2);\x0d\x0a this.add(p3);\x0d\x0a btn1.addActionListener(this);\x0d\x0a btn2.addActionListener(this);\x0d\x0a }\x0d\x0a public static void main(String[] args) {\x0d\x0a \x0d\x0a JFrame frame = new JFrame();\x0d\x0a frame.setSize(200, 200);\x0d\x0a \x0d\x0a Container contentPane = frame.getContentPane();\x0d\x0a contentPane.add(new TESTswing());\x0d\x0a frame.show();\x0d\x0a }\x0d\x0a public void actionPerformed(ActionEvent e) {\x0d\x0a // TODO Auto-generated method stub\x0d\x0a String cmd = e.getActionCommand();\x0d\x0a \x0d\x0a if (cmd.equals("Button1"))\x0d\x0a {\x0d\x0a \x0d\x0a p2.setVisible(true);\x0d\x0a p3.setVisible(false);\x0d\x0a \x0d\x0a }\x0d\x0a else\x0d\x0a { \x0d\x0a p2.setVisible(false);\x0d\x0a p3.setVisible(true);\x0d\x0a }\x0d\x0a }
如果是普通切换的话,直接定义一个int值,根据int值的不同 来画不同的东西就可以了\x0d\x0aint index;\x0d\x0aswitch(index){\x0d\x0a case 0:\x0d\x0a g.drawImage(a,0,0,20); \x0d\x0a break;\x0d\x0a case 1:\x0d\x0a g,drawImage(b,0,0,20);\x0d\x0a break;\x0d\x0a .................................\x0d\x0a}\x0d\x0a \x0d\x0a如果用渐变效果的话,创建一个数组记录下一张要话的图片的所有RGB值,初始设置所有像素点的透明度为100%,即完全透明,然后一点点的把透明度降低,直到为0,这样就把第二章图片用渐变的方法绘制出来了,这时就可以不用画第一张图片了。