import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import javax.swing.JOptionPane;
public class waterfairyflower extends Applet implements AdjustmentListener
{
String 1,2;
TextField inputup,inputbottom,scrollValue;
Scrollbar mySlider;
String tempt;
int j;
public void init()
{
setLayout(new BorderLayout());
1=JOptionPane.showInputDialog("Enter Up_limited:");
2=JOptionPane.showInputDialog("Enter Bottom_limited:");
scrollValue=new TextField(100);
mySlider=new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,Integer.MAX_VALUE);
mySlider.setUnitIncrement(1);
mySlider.setBlockIncrement(50);
add("South",mySlider);
mySlider.addAdjustmentListener(this);
add("Center",scrollValue);
}
public void adjustmentValueChanged(AdjustmentEvent e)
{
int value;
if(e.getAdjustable()==mySlider)
{
value=e.getValue();
scrollValue.setBackground(new Color(value));
}
int number1=Integer.parseInt(1);
int number2=Integer.parseInt(2);
int sum=0,number;
j=1;
for(;number1<=number2;number1++)
{
tempt=Integer.toString(number1);
for(int i=0;i<tempt.length();i++)
{
number=tempt.charAt(i)-'0';
sum+=Math.pow(number,3);
}
if(sum==number1)
{
repaint();
break;
}
}
}
public void paint(Graphics g)
{
g.drawString("Find the "+j+" waterfairyflower is:"+tempt,10+10*j,10); j=j+1; }
}
程序的功能:
输入:数的上限和下限
输出:它们之间的所有水仙花数
编译通过可是输入以后就是显示不了结果,
请高手帮忙~
import java.awt.event.*;
import java.applet.*;
import javax.swing.JOptionPane;
public class waterfairyflower extends Applet implements AdjustmentListener
{
String 1,2;
TextField inputup,inputbottom,scrollValue;
Scrollbar mySlider;
String tempt;
int j;
public void init()
{
setLayout(new BorderLayout());
1=JOptionPane.showInputDialog("Enter Up_limited:");
2=JOptionPane.showInputDialog("Enter Bottom_limited:");
scrollValue=new TextField(100);
mySlider=new Scrollbar(Scrollbar.HORIZONTAL,0,1,0,Integer.MAX_VALUE);
mySlider.setUnitIncrement(1);
mySlider.setBlockIncrement(50);
add("South",mySlider);
mySlider.addAdjustmentListener(this);
add("Center",scrollValue);
}
public void adjustmentValueChanged(AdjustmentEvent e)
{
int value;
if(e.getAdjustable()==mySlider)
{
value=e.getValue();
scrollValue.setBackground(new Color(value));
}
int number1=Integer.parseInt(1);
int number2=Integer.parseInt(2);
int sum=0,number;
j=1;
for(;number1<=number2;number1++)
{
tempt=Integer.toString(number1);
for(int i=0;i<tempt.length();i++)
{
number=tempt.charAt(i)-'0';
sum+=Math.pow(number,3);
}
if(sum==number1)
{
repaint();
break;
}
}
}
public void paint(Graphics g)
{
g.drawString("Find the "+j+" waterfairyflower is:"+tempt,10+10*j,10); j=j+1; }
}
程序的功能:
输入:数的上限和下限
输出:它们之间的所有水仙花数
编译通过可是输入以后就是显示不了结果,
请高手帮忙~
2。那些textfield干吗的
3。水仙花数的算法在哪里
4。drawString到哪里了楼主搞清楚这些问题再说,你的程序很乱,有些东西你根本没搞清楚
TextField scrollValue把g.drawString结覆盖了
改add("North",scrollValue);
和:
g.drawString("Find the "+j+" waterfairyflower is:"+tempt,10+10*j,50);
至少你能看到输出