java右下角弹窗效果

  package com.wolf.action;

  import java.awt.BorderLayout;

  import java.awt.Dimension;

  import java.awt.Toolkit;

  import java.awt.event.ActionEvent;

  import java.awt.event.ActionListener;

  import javax.swing.JDialog;

  import javax.swing.Timer;

  public class Demo extends Timer {

  private static final long serialVersionUID = 2791827603307165823L;

  public Demo(int arg0, ActionListener arg1) {

  super(arg0, arg1);

  }

  public static void main(String[] args) {

  MyDialog mydialog = new MyDialog();

  int height = 150;

  TimerAction timerAction = new TimerAction(mydialog);

  Timer timer = new Timer(0, timerAction);

  timer.start();

  for (int i = 0; i < 10; i++) {

  try {

  Thread.sleep(100);

  } catch (InterruptedException e) {

  e.printStackTrace();

  }

  height = height + 5;

  timerAction.setHeight(height);

  }

  timer.stop();

  new Demo(1, timerAction);

  }

  }

  class TimerAction implements ActionListener {

  private MyDialog mydialog = null;

  private int height = 0;

  public void setHeight(int height) {

  this.height = height;

  }

  public TimerAction(MyDialog mydialog) {

  this.mydialog = mydialog;

  }

  public void actionPerformed(ActionEvent event) {

  mydialog.setLocation(((int) mydialog.getScreenSize().getWidth()) - 200,

  ((int) mydialog.getScreenSize().getHeight() - 20 - height));

  mydialog.setSize(new Dimension(200, height));

  }

  }

  class MyDialog extends JDialog {

  private static final long serialVersionUID = 2791827603307165823L;

  private Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();

  public Dimension getScreenSize() {

  return screenSize;

  }

  public MyDialog() {

  super();

  init();

  }

  private void init() {

  this.getContentPane().setLayout(new BorderLayout());

  this.setLocation(((int) screenSize.getWidth()) - 200,

  ((int) screenSize.getHeight() - 20));

  this.setVisible(true);

  this.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);

  }

  }

  复制代码



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值