Swing动态刷新
可能大家都试过在Swing的事件监听中动态添加组件,但是JFrame却不会动态显示,只有变大变小(实际是重画了)才会显示,有些人说repaint,updateUI可以,但是我试了一下还是不行。于是用validate...发现可以了,下面是Swing动态刷新代码:
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了大观免费建站欢迎大家使用!
- import java.awt.Container;
- import java.awt.FlowLayout;
- import javax.swing.JButton;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- import javax.swing.JPanel;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- public class Ss extends JFrame{
- Container con=this.getContentPane();
- JButton jb1=new JButton("jb1");
- JButton jb2=new JButton("jb2");
- JLabel jl1=new JLabel("jl1");
- FlowLayout gly=new FlowLayout();
- JPanel jp=new JPanel(gly);
- public Ss(){
- con.add(jp);
- jp.add(jb1);
- jp.add(jb2);
- MyListener ml=new MyListener();
- jb1.addMouseListener(ml);
- this.setSize(200,200);
- this.setVisible(true);
- }
- private class MyListener extends MouseAdapter{
- @Override
- public void mouseClicked(MouseEvent e) {
- // TODO Auto-generated method stub
- try
- {
- //主要就是下面的invalidate和validate
- //当然,用jp来invalidate和validatae也是可以的
- con.invalidate();
- JButton jb3=new JButton("jb3");
- jp.add(jb3);
- con.validate();
- }
- catch (Exception ex)
- {
- ex.printStackTrace();
- }
- }
- }
- public static void main(String s[]){
- Ss sss=new Ss();
- sss.setVisible(true);
- }
- }
以上是Swing动态刷新希望大家有用。
本文题目:Swing动态刷新常用代码
本文URL:http://www.36103.cn/qtweb/news14/22614.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联