JAVA如何通过按钮来实现界面的切换?

Python016

JAVA如何通过按钮来实现界面的切换?,第1张

完整代码完全是按你要求写的。\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 }

按照你的要求添加两个按钮的Java程序如下:

package com.sunshine.customer

 import java.awt.*

import java.awt.event.*

import javax.swing.* 

import javax.swing.table.DefaultTableModel

public class JTableDemo extends JFrame implements ActionListener{    

 private JPanel topPanel    

 private JTable table

 private JButton addRoom=new JButton("添加房间")

 private JButton removeRoom=new JButton("删除房间")

 private DefaultTableModel dtm

 public JTableDemo(){        

  setTitle( "Simple JTable Application" )        

  setSize(560, 400 )        

  setBackground( Color.gray )         

  topPanel = new JPanel()

  topPanel.setLayout( new BorderLayout() )        

  getContentPane().add( topPanel )         

  String cols[] = {"房间号","是否预定","房间价格","房间类型","房间状态","卫生情况","剩余时间"}        

  String rowData[][] = {{ "", "", "","","","",""},

    { "", "", "","","","",""},{ "", "", "","","","",""},{ "", "", "","","","",""},

    { "", "", "","","","",""},{ "", "", "","","","",""},{ "", "", "","","","",""},            

    { "", "", "","","","",""},{ "", "", "","","","",""},{ "", "", "","","","",""},

    { "", "", "","","","",""},{ "", "", "","","","",""},{ "", "", "","","","",""},}

  dtm=new DefaultTableModel()

  dtm.setDataVector(rowData, cols)

  table = new JTable(dtm)        

  JScrollPane scrollPane = new JScrollPane(table)        

  topPanel.add( scrollPane, BorderLayout.CENTER )

  addRoom.addActionListener(this)

  removeRoom.addActionListener(this)

  JPanel p=new JPanel()

  p.add(addRoom)

  p.add(removeRoom)

  topPanel.add( p,BorderLayout.SOUTH )

 }     

 public static void main( String args[] ) {        

  JTableDemo mainFrame = new JTableDemo()        

  mainFrame.setVisible( true )    

 }

 @Override

 public void actionPerformed(ActionEvent ae) {

  if(ae.getSource()==addRoom){

   String row[]={ "", "", "","","","",""}

   dtm.addRow(row)

  }

  if(ae.getSource()==removeRoom){

   dtm.removeRow(table.getSelectedRow())

  }

 }

}