首页 > 编程知识 正文

java static,ie验证码图片显示不出来

时间:2023-05-06 16:10:27 阅读:173628 作者:1429

I am slightly confused,ihaveajframeofwhichihavemadeinnetbeans.thisjframehasajlabel,ofwhichissettosetvisible; from the beginning.wheneveraspecificmethodiscalled,ithensetthejlabeltosetvisible (true ); andthenuseatimertosetittofalseagainafter2seconds.apparentlyitwon ' tworkandiamunabletofigureoutwhy.iamawareoftherepaint ()

iknowtheactualmethodforsettingthevisibilityiscalled,asihavesetittoprintalinewithecurrentstate,which it does。

我的My actual code is the one below。

public JFram () }

initComponents (;

设置精度(false );

Jabel2.setvisible(false );

}

静态语音方法

try {

//function that does something

} finally {

new JFram ().showHide ); //callfunctionwhichissupposedtochangethevissibilityofjlabel

}

}

voidshowhide(}

Jabel2.setvisible(true );

new java.util.Timer ().schedule (

new java.util.TimerTask (

@Override

公共语音运行(}

Jabel2.setvisible(false );

}

(,

2000

);

}

thecodebelowhereishowitriedtousetherepaint (; 方法。

voidshowhide(}

Jabel2.setvisible(true );

jLabel2.repaint (;

new java.util.Timer ().schedule (

new java.util.TimerTask (

@Override

公共语音运行(}

Jabel2.setvisible(false );

jLabel2.repaint (;

}

(,

2000

);

}

ithinkyourproblemliesmainlyinyouusingajava.util.timerinsteadofajavax.swing.timerandprobablyyou ' reblockingtheeventdistdisdisal

youcouldtrythiscodeandcompareitwithyours,ialsodon ' tsee where you ' readdingyourjlabeltoyourframe。

import Java.awt.event.actionevent;

import Java.awt.event.action listener;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.swing utilities;

import javax.swing.Timer;

公共类共享{

私有jframe frame;

私有标签;

private Timer timer;

private boolean isVisible;

Publicstaticvoidmain(string香蕉冰棍args )。

swing utilities.invoke la ter (new runnable () {

@Override

公共语音运行(}

new ShyLabel ().createAndShowGui;

}

);

}

公共void createandshowgui (

stringlabeltext=' I ' mashylabelthathidesevery2seconds ';

isVisible=true;

frame=new jframe (getclass (.getsimplename ) );

label=newjlabel(labeltext );

timer=newtimer(2000,new ActionListener ) )。

@Override

公共语音格式(actionperformed ) {

Label.Settext(isvisible? ' ' :标签文本;

isVisible=! isVisible;

}

);

timer.setinitialdelay(2000;

timer.start (;

frame.add(label;

frame.pack (;

frame.setvisible(true;

frame.setdefaultcloseoperation (jframe.exit _ on _ close );

}

}

thebelowimageisproducedbytheabovecode,howeverbecauseofthetimeirecordedthegifitlooksreallyfastinsteadoftaking2secondsasasitsitshoutstststshoutshoutited .

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。