当前位置: 代码迷 >> Java相关 >> [求助]初学JAVA程序,有两个小问题,请大家帮助解决!
  详细解决方案

[求助]初学JAVA程序,有两个小问题,请大家帮助解决!

热度:124   发布时间:2006-01-26 20:45:00.0
[求助]初学JAVA程序,有两个小问题,请大家帮助解决!

问题1:看下面代码

import java.awt.*;
import java.awt.event.*;
class Calculate extends Frame implements ActionListener {
TextField t1 = new TextField(5);
TextField t2 = new TextField(5);
TextField t3 = new TextField(5);
TextField t4 = new TextField(5);
Label L1 = new Label("=");
Button btn = new Button("计算");
Label L2 = new Label("第一个框里添被运算数,第二个框里添运算符仅限+、-、*、/四个, 第三个框里添运算数,按计算按扭结果会在第四个框中显示出来。老师让我做个类似windows计算器的GUI程序,呵呵,偷懒了。");


//为什么上面实例化的两个对象L1和L2没有正常的显示出来?????????????????????????
//编译是通过的

public Calculate() {
setLayout(new FlowLayout());
add(t1);
add(t2);
add(t3);
add(t4);
add(btn);

btn.addActionListener(this);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
dispose();
System.exit(0);
}
});
}
public void actionPerformed(ActionEvent e) {
float x,y;
double result = 0;
String op;
try {
x = Float.parseFloat(t1.getText());
y = Float.parseFloat(t3.getText());
op = t2.getText();
if (op.equals("+")) {result = x + y;}
else if (op.equals("-")) {result = x - y;}
else if (op.equals("*")) {result = x * y;}
else if (op.equals("/")) {result = x / y;}
t4.setText(Double.toString(result));

}
catch(Exception ee){
t4.setText("数据类型错误!");
}

}
public static void main (String args[]) {
Calculate mainFrame = new Calculate();
mainFrame.setSize(500,150);
mainFrame.setTitle("musicyxy计算程序");
mainFrame.setVisible(true);
}
}






问题2:看下面代码
这是段Swing代码,目的是显示个加载程序的界面。


import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class SplashWindow extends JWindow implements ActionListener {
JLabel back = new JLabel(new ImageIcon("back.jpg"));
JProgressBar progressBar = new JProgressBar(1,100);
Timer timer;
int n = 100;
public SplashWindow() {
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
progressBar.setStringPainted(true);
progressBar.setString("loading..........");
getContentPane().add(back,"Center");
getContentPane().add(progressBar,"South");
setSize(300,200);
toFront();

setLoaction(200,200); //编译到这个地方有了问题。下面是编译出错信息,为什么会有这样的信息呢??????
//cannot resolve symbol
//symbol : method setLocation(int,int)
// location : class SplashWindow
setLocation(200,200);
// ^
setVisible(true);
timer = new javax.swing.Timer(100,this);
timer.addActionListener(this);
timer.start();
}
public void actionPerformed(ActionEvent e) {
if(--n > 0) {
progressBar.setValue(100-n);
timer.restart();
}
else {
timer.stop();
dispose();
}
}
public static void main(String args[]) {
SplashWindow splashWindow = new SplashWindow();
}
}

搜索更多相关的解决方案: JAVA  初学  

----------------解决方案--------------------------------------------------------

没人能帮助我吗?


----------------解决方案--------------------------------------------------------
第一个问题
你没有添加L1和L2,怎么可能显示出来呢……你只是实例化了而已

问题二
你写错了而已,应该是setLocation而不是setLoaction……写的小心一点……
----------------解决方案--------------------------------------------------------
谢谢,是我太不细心了
----------------解决方案--------------------------------------------------------
  相关解决方案