admin管理员组

文章数量:1794759

图形化界面:输入十进制,输出二进制

图形化界面:输入十进制,输出二进制

输入一个十进制整数,用二进制表示出来。 package day06; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Java_3 extends JFrame { public Java_3(){ super( "打印无符号整数位" ); Container c = getContentPane(); c.setLayout( new FlowLayout() ); c.add( new JLabel( "请输入整数: " ) ); final JTextField output = new JTextField( 33 ); JTextField input = new JTextField( 10 ); input.addActionListener( new ActionListener() { //*********Found******** public void actionPerformed( ActionEvent e ){ int val = Integer.parseInt( e.getActionCommand() ); //*********Found******** output.setText( getBits( val ) ); } } ); c.add( input ); c.add( new JLabel( "该数的二进制位表示是" ) ); output.setEditable( false ); //*********Found******** c.add( output ); setSize( 720, 70 ); setVisible(true); } private String getBits( int value ){ int displayMask = 1 << 31; StringBuffer buf = new StringBuffer( 35 ); for ( int c = 1; c <= 32; c++ ) { buf.append( ( value & displayMask ) == 0 ? '0' : '1' ); value <<= 1; if ( c % 8 == 0 ) buf.append( ' ' ); } return buf.toString(); } public static void main( String args[] ){ Java_3 app = new Java_3(); app.addWindowListener( new WindowAdapter() { //*********Found******** public void windowClosing( WindowEvent e ){ System.exit( 0 ); } } ); } } 运行结果

运用的知识点
  • 监听器:

    input.addActionListener( //input是一个文本框 new ActionListener() { //新建一个监听器 public void actionPerformed( ActionEvent e ){ //触发了文本框的输入后的实际处理函数 int val = Integer.parseInt( e.getActionCommand() ); output.setText( getBits( val ) ); } } );
  • JTextField类:文本处理的类。 JTextField output= new JTextField( 10 ); 创建一个名为 output的文本框,长度为10。 output.setText(“33”);给文本框输入字符串33,并显示在文本框上面。

  • 窗口处理事件:windowClosing( WindowEvent e )为窗口退出。

  • 系统处理函数:System.exit( 0 )为系统退出。

  • 容器的用法:利用add函数给图形界面添加对象。

  • Container c = getContentPane(); //创建一个容器 c.setLayout( new FlowLayout() ); c.add( new JLabel( "请输入整数: " ) ); //add函数给界面添加对象 c.add( input ); c.add( new JLabel( "该数的二进制位表示是" ) ); c.add( output );

    本文标签: 图形化界面十进制