怎样在JAVA中使按钮的操作可以连续

bargainB.addActionListener(newjava.awt.event.ActionListener(){publicvoidactionPerform... bargainB.addActionListener(new java.awt.event.ActionListener(){
public void actionPerformed(ActionEvent e){
double Psmax,Psmin,Psx,Psx_1,Pbx,Pbx_1,Pmin;
int n,i,k;
Psmax=500;
Psmin=100;
n=20;
Pbx_1=0;
Psx_1=500;
k=3;
i=0;
while(i<=n)
{i++;
Psx=Double.parseDouble(bpriceTF.getText());
if(Pbx_1>=Psmin)
Pmin=Pbx1_1;
else
Pmin=Psmin;
if ((Pbx-Pbx_1)>=(0.1*Psmax))
Psx=Psmax-(Math.pow(n,k))*(1/(Psmax-Pmin))*(Math.pow(i,k));
else
Psx=Pmin+(Math.pow(n,k))*(1/(Psmax-Pmin))*(Math.pow(n-i,k));
if(Psx>=Psx_1)
Psx=0.5*(Psx_1+Pbx);
if (Psx<Psmin)
Psx=Psmin;
Psx_1=Psx;
Pbx_1=Pbx;
spriceTF.setText(""+Psx);
timesTF.setText(""+(n-i));}
}

这是我编写的一个按钮的响应事件,设想中的操作是,点击一下按钮就进行一次操作,可以循环点击,后次点击与前次点击有关系的。但执行这个程序时,却发现进行不了,好象成单独点击事件了。由于才学JAVA,不知道是不是JAVA中的按钮是不能进行这样的操作啊,如果可以应该怎样做呢。
就是想点一下,得到一个计算值,然后把这个值作为下一次点击的一个变量,再点击下,再得到一个计算值,如此循环啊,这个在程序中可以看出来的啊,表示很难的一个计算程序。
展开
 我来答
ljydd
2008-05-16 · TA获得超过239个赞
知道小有建树答主
回答量:213
采纳率:0%
帮助的人:263万
展开全部
double Psmax,Psmin,Psx,Psx_1,Pbx,Pbx_1,Pmin;
int n,i,k;
Psmax=500;
Psmin=100;
n=20;
Pbx_1=0;
Psx_1=500;
k=3;
i=0;

这些变量每次事件进来都会被赋值,所以结果都一样,需要改变的数量得从外面传进来 像 bpriceTF.getText() 一样,然后把计算过的值再传出去
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
maye100
2008-05-16 · TA获得超过2650个赞
知道小有建树答主
回答量:1341
采纳率:100%
帮助的人:976万
展开全部
你能不能说一下你想干什么?每点一下做什么操作?再点一下又希望怎样?

我建议你让类继承事件接口,然后实现所有方法。
你现在的写法更适合用在for循环里
其次你要把
double Psmax,Psmin,Psx,Psx_1,Pbx,Pbx_1,Pmin;
int n,i,k;
Psmax=500;
Psmin=100;
n=20;
Pbx_1=0;
Psx_1=500;
k=3;
i=0;
这些变量都放到外面,而不是放在事件里成为局部变量。
大概的方法就是事件里只写一次完整的计算过程,然后把算好的数据放到text里,当你再次点击时重新从text中获取数值,然后做计算,再放回text中
不知道我是否说明白了?
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式