timetestwindow.java
来自「《Java面向对象程序设计》例子源代码.轻松学习书本.」· Java 代码 · 共 77 行
JAVA
77 行
//TimeTestWindow.javaimport java.awt.*;import java.awt.event.*;import javax.swing.*;public class TimeTestWindow extends JFrame { private Time time; private JLabel hourLabel, minuteLabel, secondLabel; private JTextField hourField, minuteField, secondField, displayField; private JButton exitButton; public TimeTestWindow(){ super( "Inner Class Demonstration" ); time = new Time(); Container container = getContentPane(); container.setLayout( new FlowLayout() ); hourLabel = new JLabel( "Set Hour" ); hourField = new JTextField( 10 ); container.add( hourLabel ); container.add( hourField ); minuteLabel = new JLabel( "Set Minute" ); minuteField = new JTextField( 10 ); container.add( minuteLabel ); container.add( minuteField ); secondLabel = new JLabel( "Set Second" ); secondField = new JTextField( 10 ); container.add( secondLabel ); container.add( secondField ); displayField = new JTextField( 30 ); displayField.setEditable( false ); container.add( displayField ); exitButton = new JButton( "Exit" ); container.add( exitButton ); // create an instance of inner class ActionEventHandler ActionEventHandler handler = new ActionEventHandler(); hourField.addActionListener( handler ); minuteField.addActionListener( handler ); secondField.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent event){ time.setSecond(Integer.parseInt(event.getActionCommand())); secondField.setText(""); displayTime(); } } ); exitButton.addActionListener( handler ); } public void displayTime(){ displayField.setText( "The time is: " + time ); } public static void main( String args[] ){ TimeTestWindow window = new TimeTestWindow(); window.setSize( 400, 140 ); window.setVisible( true ); } // inner class declaration for handling JTextField and JButton events private class ActionEventHandler implements ActionListener { public void actionPerformed( ActionEvent event ) { if ( event.getSource() == exitButton ) System.exit( 0 ); else if ( event.getSource() == hourField ) { time.setHour( Integer.parseInt( event.getActionCommand() ) ); hourField.setText( "" ); } else if ( event.getSource() == minuteField ) { time.setMinute( Integer.parseInt( event.getActionCommand() ) ); minuteField.setText( "" ); } displayTime(); // call outer class's method } } }
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?