救助!!!!!!!!!!!!

xuranyao0416 2009-09-30 05:20:54

//=============MyWindowListener.java=============
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
class MyWindowListener extends WindowAdapter
{
public void windwosClosing(WindowEvent e)
{
System.exit(1);
}
}


//==============MyProgressBar.java===================324
import java.awt.*;
import javax.swing.*;
//import MyWindowListener;
@SuppressWarnings("serial")
public class MyProgressBar extends JFrame
{
private Container c;
private static JProgressBar progressBar;
private static JLabel label;
@SuppressWarnings("deprecation")
public MyProgressBar()
{
super("MyProgressBar.java:JprogressBar测试");
Container c=getContentPane();
c.setLayout(new FlowLayout());
label =new JLabel("0.0%");
c.add(progressBar);
c.add(label);
setSize(350,80);
show();
}
@SuppressWarnings("static-access")
public static void main(String args[])
{
MyProgressBar app= new MyProgressBar();
app.addWindowListener(new MyWindowListener());
int m=Integer.parseInt(args[0]);
int max=app.progressBar.getMaximum();
app.progressBar.setStringPainted(true);
app.progressBar.setString("随机数进度");
for (int i=0; i<10; i++)
{
while (true)
{
int n=(int)(Math.random()*m);
if (n==7)
{
int cur=progressBar.getValue();
if(cur<max) progressBar.setValue(cur+30);
label.setText(
app.progressBar.getPercentComplete()*100+"%");
app.repaint();
break;
}
}
}
}
}

在eclipse里运行这个程序会报错,但不知道是什么问题。请教下这里大虾们
...全文
185 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuranyao0416 2009-10-03
  • 打赏
  • 举报
回复
中算让我找到问题所以在了

//===========MyProgressBar.java===================
import java.awt.*;
import javax.swing.*;
//import MyWindowListener;
@SuppressWarnings("serial")
public class MyProgressBar extends JFrame
{
private Container c;
private static JProgressBar progressBar;
private static JLabel label;
@SuppressWarnings("deprecation")
public MyProgressBar()
{
super("MyProgressBar.java:JprogressBar测试");
Container c=getContentPane();
c.setLayout(new FlowLayout());
progressBar=new JProgressBar(
JProgressBar.HORIZONTAL,0,300);
//漏写了这段代码,加上运行就没问题了

label =new JLabel("0.0%");
c.add(progressBar);
c.add(label);
setSize(350,80);
show();
}
public static void main(String args[])
{
MyProgressBar app= new MyProgressBar();
app.addWindowListener(new MyWindowListener());
int m=Integer.parseInt(args[0]);
int max=MyProgressBar.progressBar.getMaximum();
MyProgressBar.progressBar.setStringPainted(true);
MyProgressBar.progressBar.setString("随机数进度");
for (int i=0; i<10; i++)
{
while (true)
{
int n=(int)(Math.random()*m);
if (n==7)
{
int cur=progressBar.getValue();
if(cur<max) progressBar.setValue(cur+30);
label.setText(
MyProgressBar.progressBar.getPercentComplete()*100+"%");
app.repaint();
break;
}
}
}
}
}
xuranyao0416 2009-10-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 littlemonster 的回复:]
楼主要看看swing container,先放frame,panel,然后其他的label,radiobox啥的。我大概改了一下

import java.awt.*;
import javax.swing.*;
//import MyWindowListener;
@SuppressWarnings("serial")
public class MyProgressBar extends JFrame
{
    //private Container c;
JFrame f = new JFrame ("JProgressBarDemo");
    JPanel p = new JPanel (new FlowLayout (FlowLayout.LEFT));
    public static JProgressBar progressBar = new JProgressBar (JProgressBar.VERTICAL, 10, 100);
    public static JLabel label;
   
    @SuppressWarnings("deprecation")
    public MyProgressBar()
    {
   
     
        super("MyProgressBar.java:JprogressBar TEst");
       
       
        p.setPreferredSize (new Dimension (600,400));
        //Container c=getContentPane();
        //c.setLayout(new FlowLayout());
        label =new JLabel("0.0%");
        f.add(p);
        p.add(progressBar);
        p.add(label);
        setSize(350,80);
        show();
    }
    @SuppressWarnings("static-access")
    public static void main(String args[])
    {
        MyProgressBar app= new MyProgressBar();
        app.addWindowListener(new MyWindowListener());
        int m=Integer.parseInt(String.valueOf(10));//args[0]
        int max=app.progressBar.getMaximum();
        app.progressBar.setStringPainted(true);
        app.progressBar.setString("random process");
        for (int i=0; i <10; i++)
        {
            while (true)
            {
                int n=(int)(Math.random()*m);
                if (n==7)
                {
                    int cur=progressBar.getValue();
                    if(cur <max) progressBar.setValue(cur+30);
                    label.setText(
                    app.progressBar.getPercentComplete()*100+"%");
                    app.repaint();
                    break;
                }
            }
        }
    }
}


引用楼主 xuranyao0416 的回复:
Java code//=============MyWindowListener.java=============import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;class MyWindowListenerextends WindowAdapter
{publicvoid windwosClosing(WindowEvent e)
    {
        System.exit(1);
    }
}
Java code//==============MyProgressBar.java===================324import java.awt.*;import javax.swing.*;//import MyWindowListener;@SuppressWarnings("serial")publicclass MyProgressBarextends JFrame
{private Container c;privatestatic JProgressBar progressBar;privatestatic JLabel label;
    @SuppressWarnings("deprecation")public MyProgressBar()
    {super("MyProgressBar.java:JprogressBar测试");
        Container c=getContentPane();
        c.setLayout(new FlowLayout());
        label=new JLabel("0.0%");
        c.add(progressBar);
        c.add(label);
        setSize(350,80);
        show();
    }
    @SuppressWarnings("static-access")publicstaticvoid main(String args[])
    {
        MyProgressBar app=new MyProgressBar();
        app.addWindowListener(new MyWindowListener());int m=Integer.parseInt(args[0]);int max=app.progressBar.getMaximum();
        app.progressBar.setStringPainted(true);
        app.progressBar.setString("随机数进度");for (int i=0; i <10; i++)
        {while (true)
            {int n=(int)(Math.random()*m);if (n==7)
                {int cur=progressBar.getValue();if(cur <max) progressBar.setValue(cur+30);
                    label.setText(
                    app.progressBar.getPercentComplete()*100+"%");
                    app.repaint();break;
                }
            }
        }
    }
}
在eclipse里运行这个程序会报错,但不知道是什么问题。请教下这里大虾们

[/Quote]
按你的这种方式改在eclipse里确实能运行出来,但无法到达我的目的。我是想做个类似进度条的效果。
java1109 2009-09-30
  • 打赏
  • 举报
回复
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
class MyWindowListener extends WindowAdapter
{
public void windwosClosing(WindowEvent e)
{
System.exit(1);
}
}
这段楼主是不是想重写WindowAdapter里的windowClosing方法啊
方法名错了
别的地方我没看
superliubao 2009-09-30
  • 打赏
  • 举报
回复
???
littlemonster 2009-09-30
  • 打赏
  • 举报
回复
楼主要看看swing container,先放frame,panel,然后其他的label,radiobox啥的。我大概改了一下

import java.awt.*;
import javax.swing.*;
//import MyWindowListener;
@SuppressWarnings("serial")
public class MyProgressBar extends JFrame
{
//private Container c;
JFrame f = new JFrame ("JProgressBarDemo");
JPanel p = new JPanel (new FlowLayout (FlowLayout.LEFT));
public static JProgressBar progressBar = new JProgressBar (JProgressBar.VERTICAL, 10, 100);
public static JLabel label;

@SuppressWarnings("deprecation")
public MyProgressBar()
{


super("MyProgressBar.java:JprogressBar TEst");


p.setPreferredSize (new Dimension (600,400));
//Container c=getContentPane();
//c.setLayout(new FlowLayout());
label =new JLabel("0.0%");
f.add(p);
p.add(progressBar);
p.add(label);
setSize(350,80);
show();
}
@SuppressWarnings("static-access")
public static void main(String args[])
{
MyProgressBar app= new MyProgressBar();
app.addWindowListener(new MyWindowListener());
int m=Integer.parseInt(String.valueOf(10));//args[0]
int max=app.progressBar.getMaximum();
app.progressBar.setStringPainted(true);
app.progressBar.setString("random process");
for (int i=0; i<10; i++)
{
while (true)
{
int n=(int)(Math.random()*m);
if (n==7)
{
int cur=progressBar.getValue();
if(cur<max) progressBar.setValue(cur+30);
label.setText(
app.progressBar.getPercentComplete()*100+"%");
app.repaint();
break;
}
}
}
}
}



[Quote=引用楼主 xuranyao0416 的回复:]
Java code//=============MyWindowListener.java=============import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;class MyWindowListenerextends WindowAdapter
{publicvoid windwosClosing(WindowEvent e)
{
System.exit(1);
}
}
Java code//==============MyProgressBar.java===================324import java.awt.*;import javax.swing.*;//import MyWindowListener;@SuppressWarnings("serial")publicclass MyProgressBarextends JFrame
{private Container c;privatestatic JProgressBar progressBar;privatestatic JLabel label;
@SuppressWarnings("deprecation")public MyProgressBar()
{super("MyProgressBar.java:JprogressBar测试");
Container c=getContentPane();
c.setLayout(new FlowLayout());
label=new JLabel("0.0%");
c.add(progressBar);
c.add(label);
setSize(350,80);
show();
}
@SuppressWarnings("static-access")publicstaticvoid main(String args[])
{
MyProgressBar app=new MyProgressBar();
app.addWindowListener(new MyWindowListener());int m=Integer.parseInt(args[0]);int max=app.progressBar.getMaximum();
app.progressBar.setStringPainted(true);
app.progressBar.setString("随机数进度");for (int i=0; i<10; i++)
{while (true)
{int n=(int)(Math.random()*m);if (n==7)
{int cur=progressBar.getValue();if(cur<max) progressBar.setValue(cur+30);
label.setText(
app.progressBar.getPercentComplete()*100+"%");
app.repaint();break;
}
}
}
}
}
在eclipse里运行这个程序会报错,但不知道是什么问题。请教下这里大虾们
[/Quote]
lxxzhy 2009-09-30
  • 打赏
  • 举报
回复
private static JProgressBar progressBar = new JProgressBar();
wd9053 2009-09-30
  • 打赏
  • 举报
回复
CMD中编译正常,Eclipse没装

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧