请教界面问题, 文本区当然有显示了 你的JTextField里面没有内容 所以显示不出来 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 p1.add ( jtResult = new JTextField() );//不能显示 这一句改成 p1.add ( jtResult = new JTextField( 10 ) ); p1.add ( jtResult = new JTextField() );//不能显示 这一句改成 p1.add ( jtResult = new JTextField( 10 ) ); 定义JTextField的在界面上显示的宽度。 //你没有给文本框指定宽度,默认的宽度是0,所以不显示了import java.awt.*;import java.awt.event.*;import javax.swing.*;public class Form1 extends JFrame implements ActionListener{ private JTextField jtNum1, jtNum2, jtResult; private JButton jbAdd,jbSub, jbMulti, jbDiv; public static void main(String[] arvg){ Form1 form1 = new Form1(); form1.pack (); form1.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE); form1.setVisible (true);} Form1(){ JPanel p1 = new JPanel(); p1.setLayout ( new FlowLayout() ); p1.add ( new JLabel("Number 1") ); p1.add ( jtNum1 = new JTextField("",10) );//这样就能显示 p1.add ( new JLabel("Number 2") ); p1.add ( jtNum2 = new JTextField("",10) );//这样就能显示 p1.add ( new JLabel("Result")); p1.add ( jtResult = new JTextField("",10) );//这样就能显示 jtResult.setEditable (false); JPanel p2 = new JPanel(); p2.setLayout ( new FlowLayout() ); p2.add ( jbAdd = new JButton("Add") ); p2.add ( jbSub = new JButton("Subtract") ); p2.add ( jbMulti = new JButton("Multipty")); p2.add ( jbDiv = new JButton("Divide") ); jbAdd.addActionListener (this); jbSub.addActionListener (this); jbMulti.addActionListener (this); jbDiv.addActionListener (this); getContentPane().setLayout (new BorderLayout()); getContentPane().add (p1, BorderLayout.CENTER); getContentPane().add (p2, BorderLayout.SOUTH); } public void actionPerformed(ActionEvent e){ if( e.getSource () == jbAdd ){ double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) ); double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) ); double result = num1 + num2; jtResult.setText (String.valueOf ( result )); } if( e.getSource () == jbSub ){ double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) ); double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) ); double result = num1 - num2; jtResult.setText (String.valueOf ( result )); } if( e.getSource () == jbMulti ){ double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) ); double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) ); double result = num1 * num2; jtResult.setText (String.valueOf ( result )); } if( e.getSource () == jbDiv ){ //除数为零时,如何写异常,运行时总要出错 try{ double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) ); double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) ); if(num2 == 0) throw new RuntimeException("The num2 can be zero !"); double result = num1 + num2; jtResult.setText (String.valueOf ( result )); }catch(RuntimeException b){ System.out.println ("The num2 can be zero !"); } } }} 为什么用java编译这段代码会得出奇怪的结果? 关于set和list的contains的问题 如何在菜单栏里加右键菜单???? 大伙都使用什么IDE编写JAVA? 大家猜一下这个类的运行结果是什么? 关于SSL配置的问题~!~ 几道考试题,帮忙看看答案! 大虾帮帮忙呀,JavaMail收取邮件时主题是乱码 200分问几个问题! 新手 jdk如何设置环境变量? 小妹郁闷死了,各位大侠救命啊!关于SOCKET和多线程的问题。error J0082: Class 'Server' doesn't have a constructor that matches 'Ser 紧急求助一个奇怪的问题
这一句改成
p1.add ( jtResult = new JTextField( 10 ) );
这一句改成
p1.add ( jtResult = new JTextField( 10 ) );
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class Form1 extends JFrame implements ActionListener{
private JTextField jtNum1, jtNum2, jtResult;
private JButton jbAdd,jbSub, jbMulti, jbDiv; public static void main(String[] arvg){
Form1 form1 = new Form1();
form1.pack ();
form1.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
form1.setVisible (true);
} Form1(){
JPanel p1 = new JPanel();
p1.setLayout ( new FlowLayout() );
p1.add ( new JLabel("Number 1") );
p1.add ( jtNum1 = new JTextField("",10) );//这样就能显示
p1.add ( new JLabel("Number 2") );
p1.add ( jtNum2 = new JTextField("",10) );//这样就能显示
p1.add ( new JLabel("Result"));
p1.add ( jtResult = new JTextField("",10) );//这样就能显示
jtResult.setEditable (false);
JPanel p2 = new JPanel();
p2.setLayout ( new FlowLayout() );
p2.add ( jbAdd = new JButton("Add") );
p2.add ( jbSub = new JButton("Subtract") );
p2.add ( jbMulti = new JButton("Multipty"));
p2.add ( jbDiv = new JButton("Divide") );
jbAdd.addActionListener (this);
jbSub.addActionListener (this);
jbMulti.addActionListener (this);
jbDiv.addActionListener (this); getContentPane().setLayout (new BorderLayout());
getContentPane().add (p1, BorderLayout.CENTER);
getContentPane().add (p2, BorderLayout.SOUTH);
} public void actionPerformed(ActionEvent e){
if( e.getSource () == jbAdd ){
double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) );
double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) );
double result = num1 + num2;
jtResult.setText (String.valueOf ( result ));
} if( e.getSource () == jbSub ){
double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) );
double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) );
double result = num1 - num2;
jtResult.setText (String.valueOf ( result ));
} if( e.getSource () == jbMulti ){
double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) );
double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) );
double result = num1 * num2;
jtResult.setText (String.valueOf ( result ));
} if( e.getSource () == jbDiv ){
//除数为零时,如何写异常,运行时总要出错
try{
double num1 = ( Double.parseDouble ( jtNum1.getText ().trim () ) );
double num2 = ( Double.parseDouble ( jtNum2.getText ().trim () ) );
if(num2 == 0)
throw new RuntimeException("The num2 can be zero !"); double result = num1 + num2;
jtResult.setText (String.valueOf ( result ));
}catch(RuntimeException b){
System.out.println ("The num2 can be zero !");
}
}
}}