java彩色代码气泡,java实现屏幕右下角弹出气泡窗口,java窗口,[Java]代码publ

该博客介绍了如何使用Java实现一个屏幕右下角弹出的气泡提示窗口。代码中创建了一个名为ToolTipMsg的类,继承自JWindow,并设置了窗口的大小、位置和样式。此外,还定义了一个ToolTipUtil工具类,用于设置提示窗口的尺寸、步长和显示时间等参数。通过showMsg和hiddenMsg方法,实现了气泡窗口的显示和隐藏动画效果。
摘要由CSDN通过智能技术生成

java实现屏幕右下角弹出气泡窗口,java窗口,[Java]代码publ

[Java]代码public class ToolTipMsg extends JWindow{ private ToolTipUtil toolTipUtil; private JTextArea msg; private Color bgColor; private int step = 0; boolean flag = true; public ToolTipMsg(String str,JFrame frame) { super(frame); toolTipUtil = new ToolTipUtil(); msg = new JTextArea(); // 设定边框颜色 bgColor = new Color(255, 255, 225); msg.setBackground(bgColor); msg.setBorder(BorderFactory.createLineBorder(Color.BLACK)); msg.setMargin(new Insets(4, 4, 4, 4)); msg.setLineWrap(true); msg.setWrapStyleWord(true); msg.setEditable(false); setLayout(new BorderLayout()); msg.setText(str); add(msg); this.setSize(toolTipUtil.get_width(),toolTipUtil.get_height()); setAlwaysOnTop(true); } private synchronized void showMsg_1(int pos){ int showHeigth = ScreanSizeUtil.getHetgth() - toolTipUtil.get_height() - 30; if(!this.isVisible()) setVisible(true); if((showHeigth) <= ScreanSizeUtil.getHetgth() - pos){ setLocation(ScreanSizeUtil.getWidth() - toolTipUtil.get_width(), ScreanSizeUtil.getHetgth() - pos); }else{ flag = false; } } private synchronized void hiddenMsg_1(int pos){ if(ScreanSizeUtil.getHetgth() - pos < ScreanSizeUtil.getHetgth()){ setLocation(ScreanSizeUtil.getWidth() - toolTipUtil.get_width(), ScreanSizeUtil.getHetgth() - pos); }else{ flag = true; setVisible(false); } } public void showMsg(){ new Thread(new Runnable() { public void run() { if(step < 0) step = 0; flag = true; while(flag){ try { showMsg_1(step); step = step + 5; Thread.sleep(toolTipUtil.get_stepTime()); } catch (InterruptedException e) { e.printStackTrace(); } if(!flag){ flag = true; break; } } } }).start(); } public void hiddenMsg(){ try { Thread.sleep(toolTipUtil.get_displayTime()); } catch (InterruptedException e1) { e1.printStackTrace(); } if(flag){ flag= false; } while(step >= 0 && !flag){ try { Thread.sleep(toolTipUtil.get_stepTime()); step = step - 5; hiddenMsg_1(step); } catch (InterruptedException e) { e.printStackTrace(); } } } public static void main(String[] args) { ToolTipMsg toolMsg = new ToolTipMsg("test",null); toolMsg.showMsg(); toolMsg.hiddenMsg(); }}package com.win.util;import java.awt.Color;import java.awt.Font;public class ToolTipUtil { // 气泡提示宽 private int _width = 300; // 气泡提示高 private int _height = 100; // 设定循环的步长 private int _step = 30; // 每步时间 private int _stepTime = 30; // 显示时间 private int _displayTime = 6000; // 目前申请的气泡提示数量 private int _countOfToolTip = 0; // 当前最大气泡数 private int _maxToolTip = 0; // 在屏幕上显示的最大气泡提示数量 private int _maxToolTipSceen; // 字体 private Font _font; // 边框颜色 private Color _bgColor; // 背景颜色 private Color _border; // 消息颜色 private Color _messageColor; // 差值设定 private int _gap; // 是否要求至顶(jre1.5以上版本方可执行) boolean _useTop = true; public int get_width() { return _width; } public void set_width(int _width) { this._width = _width; } public int get_height() { return _height; } public void set_height(int _height) { this._height = _height; } public int get_step() { return _step; } public void set_step(int _step) { this._step = _step; } public int get_stepTime() { return _stepTime; } public void set_stepTime(int _stepTime) { this._stepTime = _stepTime; } public int get_displayTime() { return _displayTime; } public void set_displayTime(int _displayTime) { this._displayTime = _displayTime; } public int get_countOfToolTip() { return _countOfToolTip; } public void set_countOfToolTip(int _countOfToolTip) { this._countOfToolTip = _countOfToolTip; } public int get_maxToolTip() { return _maxToolTip; } public void set_maxToolTip(int _maxToolTip) { this._maxToolTip = _maxToolTip; } public int get_maxToolTipSceen() { return _maxToolTipSceen; } public void set_maxToolTipSceen(int _maxToolTipSceen) { this._maxToolTipSceen = _maxToolTipSceen; } public Font get_font() { return _font; } public void set_font(Font _font) { this._font = _font; } public Color get_bgColor() { return _bgColor; } public void set_bgColor(Color _bgColor) { this._bgColor = _bgColor; } public Color get_border() { return _border; } public void set_border(Color _border) { this._border = _border; } public Color get_messageColor() { return _messageColor; } public void set_messageColor(Color _messageColor) { this._messageColor = _messageColor; } public int get_gap() { return _gap; } public void set_gap(int _gap) { this._gap = _gap; } public boolean is_useTop() { return _useTop; } public void set_useTop(boolean _useTop) { this._useTop = _useTop; } }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值