`

仿QQ登陆提示窗口

    博客分类:
  • Ajax
阅读更多
package com.teamtop.kong.client;

import com.google.gwt.user.client.Timer;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.HTML;
import com.google.gwt.user.client.ui.PopupPanel;

/**
 * @author 	henyue@gmail.com (Kong)
 * @version	CreatedTime:2010-3-1 上午11:58:17
 * @Description	仿QQ登陆右下角弹出窗口示例
 */

public class LoginPopupPanel extends PopupPanel {
	private String htmlText = "";
	
	/**
	 * 构造方法
	 * @param htmlText	显示在弹出窗口上的HTML内容
	 */
	public LoginPopupPanel(String htmlText) {
		this.htmlText = htmlText;
		this.setWidget(new HTML(this.htmlText));
		this.setWidth("200");
//		this.setAnimationEnabled(true);
	}
	
	/**
	 * 通过此方法调用窗口的渐入和渐隐
	 */
	public void popup() {
		this.show();
		final int left = Window.getClientWidth() - this.getOffsetWidth();
//		this.setHeight("0");
		int top = Window.getClientHeight();
		this.setPopupPosition(left, top);
		Timer upTimer = getTimer(left, Window.getClientHeight() - this.getOffsetHeight(), false);
		upTimer.schedule(500);
		Timer hideTimer = getTimer(left, Window.getClientHeight(), true);
		hideTimer.schedule(5000);
	}
	
	/**
	 * 通过Timer控制弹出窗口的渐入或渐隐
	 * @param left				窗体X轴坐标
	 * @param currentTop	窗体预定Y轴坐标
	 * @param isHide			是否为渐隐效果
	 * @return	
	 */
	private Timer getTimer(final int left, final int targetTop, final boolean isHide) {
		Timer timer = new Timer() {
			@Override
			public void run() {
				//当前Y轴位置
				int currentTop = getAbsoluteTop();
				if (isHide ? currentTop < targetTop : currentTop > targetTop) {
					//每过40毫秒,弹出窗口位置移动5
					currentTop = isHide ? currentTop + 5 : currentTop - 5;
					setPopupPosition(left, currentTop);
					this.schedule(50);
				} else {
					//移动超过预定位置时,重置到预定位置
					setPopupPosition(left, targetTop);
					if (isHide) {
						hide();
					}
				}				
			}			
		};
		return timer;
	}
}



调用:
    //添加自动弹出窗口
    LoginPopupPanel loginPopup = new LoginPopupPanel("欢迎访问!<br/>这里是测试信息窗口!");
    loginPopup.popup();
分享到:
评论

相关推荐

    高度仿真QQ登陆窗口程序及源码

    该资源是一个高度仿真的QQ登录窗口程序,包含了源代码,主要功能有三个: 1. **自动显示故障提示并关闭正在运行的QQ**:这个功能意味着程序可以检测到系统中是否已有QQ正在运行,并在需要时自动关闭它。这涉及到...

    winform高仿qq登陆界面

    首先,"winform高仿qq登陆界面"这个标题暗示了我们需要使用Microsoft的Windows Forms(WinForms)技术来构建一个与腾讯QQ登录界面类似的用户界面。WinForms是.NET Framework的一部分,用于开发桌面应用程序,提供了...

    Swing做的高仿QQ登陆界面

    在这个仿QQ登录界面中,开发者可能使用了JLabel来创建“用户名”和“密码”的提示文本,使用JTextField和JPasswordField来接收用户的输入,以及使用JButton来定义“登录”操作。 登录验证功能通常涉及到用户输入的...

    易语言高仿QQ登陆模块

    "易语言高仿QQ登陆模块"是一个专为初学者设计的教学项目,旨在帮助他们了解和掌握编程基础,特别是使用易语言进行界面设计和模拟登录功能的实现。易语言是一种中文编程语言,它以简单易懂的语法著称,使得初学者能够...

    高仿QQ登陆界面

    打开"Form1.cs"文件,可以看到一个空白的设计窗口。使用工具箱中的控件,如Label、TextBox(用于输入用户名和密码)、Button(登录按钮)等,布局登录界面。确保界面的样式和布局尽可能接近QQ2013的原版设计。可以...

    仿QQ登陆界面 java.swing

    【标题】"仿QQ登陆界面 java.swing"指的是使用Java的Swing库创建的一个模仿QQ登录界面的项目。Swing是Java提供的一种用于构建图形用户界面(GUI)的工具包,它提供了丰富的组件和功能,使得开发者能够方便地设计出...

    仿qq登陆界面

    QQDemo项目是一个使用C++语言在Visual Studio 2008环境下编写的程序,旨在实现一个仿QQ登录界面。这个项目对于学习C++图形用户界面(GUI)编程以及模拟流行应用的设计理念具有一定的实践价值。以下将详细阐述相关...

    易语言源码易语言仿QQ登陆界面皮肤源码.rar

    这个“易语言仿QQ登陆界面皮肤源码”是使用易语言编写的一个示例项目,旨在教用户如何利用易语言来创建类似QQ登录界面的图形用户界面(GUI)和皮肤效果。 在易语言中,开发GUI应用主要依靠内置的窗口程序模块,该...

    仿QQ登陆界面java程序设计

    在本文中,我们将深入探讨如何使用Java编程语言设计一个仿QQ登录界面的程序。QQ作为中国最流行的即时通讯软件之一,其用户界面设计简洁而直观,因此,学习如何仿制其登录界面对于Java开发者来说是一个很好的实践项目...

    易语言自绘登陆UI界面 仿QQ界面源码

    本案例中,"易语言自绘登陆UI界面 仿QQ界面源码"是一个教学或示例项目,它提供了模仿QQ登录界面的设计代码,帮助学习者理解如何在易语言中创建类似QQ的登录界面。 QQ作为一款流行的即时通讯软件,其用户界面设计...

    Qt案例仿qq登陆界面

    【Qt案例仿qq登陆界面】 Qt是一个跨平台的C++图形用户界面应用程序开发框架,它允许开发者创建桌面、移动和嵌入式设备上的优美且功能丰富的用户界面。本案例是基于Qt来模仿QQ的登录界面,旨在展示如何利用Qt的强大...

    java仿QQ2016登陆界面

    Java仿QQ2016登录界面是一个学习项目,旨在帮助开发者了解如何使用Java语言和图形用户界面(GUI)工具来创建类似腾讯QQ2016的登录界面。这个项目主要涉及以下几个关键知识点: 1. **Java GUI编程**:Java提供了一些...

    仿QQ登陆及主界面 java

    在本项目中,我们主要探讨的是如何使用Java编程语言来实现一个模仿QQ登录及主界面的应用。QQ作为一款流行的即时通讯软件,其用户界面设计简洁、功能强大,因此,模仿QQ界面可以作为学习和掌握GUI(图形用户界面)...

    高仿真QQ登陆界面 ---基于MFC

    【标题】"高仿真QQ登陆界面 ---基于MFC"是一个使用Microsoft Foundation Classes (MFC)库开发的项目,旨在创建一个与腾讯QQ登录界面高度相似的用户界面。MFC是微软提供的一套C++类库,它封装了Windows API,使得...

    仿QQ2013源码

    (C#)仿QQ2013局域网通讯源码一份, 初级版参考通讯源码一份 二、实现功能: 1.高仿界面100%,让你分辨不清楚那个才是真的QQ。 2.四边阴影,毛边效果。 3.密码键盘输入,防护更贴心。 4.圆角窗体,润滑如圆。 5.登录...

    高仿QQ2013源码

    5.登录主界面后,有登陆提示弹窗。 6.皮肤随心变:拖动任意一张图片至主界面,就可以改变皮肤。 7.皮肤色调获取:改变皮肤的同时,将计算图片色调,再将其运用到窗体背景色。 8.皮肤尾部渐变:如真QQ一般,上下左右...

    WPF开发仿概念版QQ登录界面(超炫)

    在本文中,我们将深入探讨如何使用WPF(Windows Presentation Foundation)技术来开发一个仿概念版的QQ登录界面,这是一个超炫的设计,非常适合初学者学习。WPF是.NET Framework 3.5的一部分,它提供了一个强大的...

    高仿QQ2013

    5.登录主界面后,有登陆提示弹窗。 6.皮肤随心变:拖动任意一张图片至主界面,就可以改变皮肤。 7.皮肤色调获取:改变皮肤的同时,将计算图片色调,再将其运用到窗体背景色。 8.皮肤尾部渐变:如真QQ一般,上下左右...

    高仿QQ2013局域通讯版源码20130502

    5.登录主界面后,有登陆提示弹窗。 6.皮肤随心变:拖动任意一张图片至主界面,就可以改变皮肤。 7.皮肤色调获取:改变皮肤的同时,将计算图片色调,再将其运用到窗体背景色。 8.皮肤尾部渐变:如真QQ一般,上下左右...

    [精仿]QQ2013局域网通讯(10.30更新版-带最新版界面库)

    5.登录主界面后,有登陆提示窗,提示上次登录的城市和时间。 6.皮肤随心变:拖动任意一张图片至主界面,就可以改变皮肤。 7.皮肤色调获取:改变皮肤的同时,将计算图片色调,再将其运用到窗体背景色。 8.皮肤尾部...

Global site tag (gtag.js) - Google Analytics