说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

用VB实现“ICQ”式的启动欢迎画面

HTML文档下载 WORD文档下载 PDF文档下载
用VB实现“ICQ”式的启动欢迎画面


广西 高 罡
  第一次运行,或通过运行程序的方式来启动ICQ时,随着一声火车的长鸣,我们都能看到一朵背景为透空的大花,这就是ICQ独特的欢迎画面!通常,我们都是用一整个带图形及文字的窗体来做为欢迎画面的。我们要如何去做才能实现类ICQ的欢迎画面呢?这看起来像是件十分复杂的工作,其实,利用了强大的API函数,事情就会变得非常的简单。出于简单化的考虑,我使用VB6.0简体中文企业版来完成这一例程。
  首先要准备好做为欢迎画面所需要的图片,然后对图片进行简单的处理,把需要透空的地方填上纯白色(255,255,255),然后保存为*.bmp文件,这用PhotoShop可以很容易地实现。需要注意的是,图片必须为“索引色”模式,如果不是就需用PhotoShop来修改,否则不能实现透空效果。
  先建立一个标准EXE工程,在窗体上文稿放置一个Picture控件,控件名为Picture1,和一个Timer控件,控件名为Timer1,Interval属性设置为2000。
  原程序如下:

  Option Explicit
  '定义获取桌面HDC的api函数
  Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
  '定义TransparentBlt函数
  '实现图片的透空效果需要用上API函数:TransparentBlt,这个函数功能十分强大,而且使用方便,但不幸的
  '是VB自带的API浏览器居然把它的漏掉了,所以我们只有采用人工输入的方法了
  Private Declare Function TransparentBlt Lib "msimg32.dll" _
   (ByVal hdcDest As Long, _
   ByVal nXOriginDest As Long, _
   ByVal nYOriginDest As Long, _
   ByVal nWidthDest As Long, _
   ByVal nHeightDest As Long, _
   ByVal hdcSrc As Long, _
   ByVal nXOriginSrc As Long, _
   ByVal nYOriginSrc As Long, _
   ByVal nWidthSrc As Long, _
   ByVal nHeightSrc As Long, _
   ByVal crTransparent As Long) As Long
  '其中,hdcDest为目标地的HDC,nXOriginDEst和nYoriginDest分别为目标图像的起始点坐标,nWidthDesk和nHeightDest分别为目标图像的宽度和高度。与之相应的hdcSrc、nXOriginSrc、nyOriginSrc、nWidthSrc、nHeightSrc分别为原图的HDC、原图的起始X、Y坐标、原图和宽度和长度,crTransparent为需要设置成透空的颜色的RGB值。
  '定义用于恢复桌面的函数
  Private Declare Function InvalidateRectAsAny Lib "user32" Alias _
    "InvalidateRect" (ByVal hwnd As Long, lpRect As Any, _
    ByVal bErase As Long) As Long

  Private Sub Form_Load()
   Me.Hide
   Dim Pic As Long
   Dim w As Long
   Dim h As Long
   Dim x As Long
   Dim sx, sy
  Picture1.AutoRedraw = True
  '获取桌面的HDC
  x = GetDC(0)
  '计算桌面的宽度和高度
   sx = Screen.Width \ Screen.TwipsPerPixelX
   sy = Screen.Height \ Screen.TwipsPerPixelY
  '计算图像的宽度和高度
  w = Picture1.ScaleX(Picture1.Picture.Width, 8, vbPixels)
  h = Picture1.ScaleY(Picture1.Picture.Height, 8, vbPixels)
  
  picture1.picture=loadpicture("图像文件的完整文件名称")
  
  '使透空的图像显示在桌面的中央
   Pic = TransparentBlt(x, _
   sx / 2 - w / 2, _
   sy / 2 - h / 2, _
   w, _
   h, _
   Picture1.hDC, _
   0, _
   0, _
   w, _
   h, _
   RGB(255, 255, 255))
  End Sub
  Private Sub Timer1_Timer()
  '两秒钟后恢复桌面
  InvalidateRectAsAny 0, ByVal 0&, True
  Load 自制程序的主窗体名
  Timer1.Enabled = False
  End Sub
  需要注意的是程序完成后如果直接在VB环境下运行有可能会出现透空图像一闪而过的现象,这并不是你的错,只要把程序编译成*.exe的文件后运行一切都会正常的。

360石晓虹:针对移动Apps的DDoS攻击将成重大威胁 更社交化:谷歌将推出Google Play平台服务 C语言对磁盘文件进行快速排序 传Google已关闭短信搜索服务 PayPal首席安全官:靠密码验证身份即将寿终正寝 DRM你又赢了:其API纳入HTML5标准 豌豆荚王俊煜:洗白白其实是一个计划外的产物 抢Google等巨头生意,纽约大学小伙挖掘并出售自己数据 noBackend:前端优先的开发模式 C、CPP const 详解 三星5G技术获得突破性进展 未来传输速度可达10Gbps 5月14日:1984年美国社交网站Facebook创办人Mark Zuckerberg出生 Chartkick:一行代码即可绘制出漂亮的图表 用友UAP将打造开放平台 建应用商店销售企业级应用 共享软件营销:如何将你的产品推向海外 谷歌使用Debian Linux作为GCE的默认操作系统 大数据?别唬人了!我们真的需要盲目烧钱追求大数据吗? 日本社交手游公司GREE巨星陨落 中国区全员被裁 战歌:85后手游开发团队背后的故事 分秒钟做款App:细数国内外在线DIY应用网站 指点传媒CEO专访:紧握二三线市场用户命脉 专访Waygo创始人:白切鸡怎么翻译? 探究共享软件海外营销新策略(西安站) 讲师秀8:车音网沈康麒和他的智能驾车服务 数据可视化独领风骚:看这6家初创公司如何玩转大数据? 最新研究显示:IE10防恶意软件能力比Chrome等浏览器都要强 Windows Blue正式定名Windows 8.1 对Windows 8及RT用户免费 Testin云测试破1000万次 自动化测试成趋势 接手Android后首次接受媒体采访 Sundar Pichai谈Android未来 C语言实现二分法查找 让开发者高效编程的10个新框架 请高手帮忙! 双声卡问题求救 windows下如何阅读pdg文件? 求救,我的QQ好像中病毒了!(莫名其妙的自动发信息) 请高手帮忙! 请高手帮忙! 哪里有下载——规划办证hyppc.3.0的,很急的,多谢 datawindow的sql不能修改 有谁用过Dev的Print System,请进来看看! 2000的信使服务 新浪网上商店的东西能不能买? 制作网上收看MTV,和在线听歌,下载,和短信业务,使用什么技术最好? 在VB里的chr(32)等在c#里怎么实现! 动态添加控件,看看这行代码是否有错: 看sdk头大了,大家帮我解释一下这几句的意思吧~~~~~ 大虾们::急呀!帮帮!!在线等待!! 恶梦从上午开始 求助!我的CapsLock键出问题了(只能打开大写,不能关闭) 请帮我看这条SQL语句,什么地方不对啊! Webservice的哪里算中间层,可以进行逻辑控制?客户端是否需要midas.dll? 为什么客户端浏览器总出错误? 如何获得DataReader中的行数? Libran() 请进 什么关键时候信赖全球通??屁话,大家来帮忙鄙视一下移动!!! 如何设置Log文件,记录数据库的操作信息? 请问哪里可以买到数据线把手迹和电脑联起来 蓝天,我有一个CELL表格的问题? 请问那里有bcb6.0下载(100)分 用DataGrid进行自定义分页后,页面切换时,如何方便的记录嵌在DataGrid中的Checkbox的状态? 关于GHOST的问题,现在的版本是否能刻WIN2000,以及域网中广播式刻录的问题,急!!!!!!!!!!!!!!!!!! 图片显示问题 请问有关程序员的考试 AntBrother(蚁哥) 请进 AntBrother(蚁哥) 请进 帮忙,如何屏闭TextBox控件的其它字符输入,只能输入数字!!!! 下的一段代码,在BCB怎是报错 大难题:在Win2000或者WinXP上安装Oracle7.3.3 ???? 一个很菜的问题:怎么查看所有的变量或属性值? 请问VB.NET如何获取IE收藏夹的位置? 迷惑不解,请教了 怎么用按钮来控制复选框的全部选中呀??? Excel中宏的问题!急 大难题:在Win2000或者WinXP上安装 Oracle7.3.3 ??? 关于窗口的大小和位置的问题 视图指针问题,高手帮忙!谢谢! 寻觅图象处理高手共同合作,欢迎朋友们去偶的站点申请免费主页空间 中秋佳节,兄弟们发Cash了吗 ? 寻觅图象处理高手共同合作,欢迎朋友们去偶的站点申请免费主页空间 寻觅图象处理高手共同合作,欢迎朋友们去偶的站点申请免费主页空间 用户控件 高手请进!!关于线程问题,本人在线等候!!! 高二数学 若x²>1是x 若"x2-x>2"是"x-a 设函数f(x)=x2-4x+k的图像与x轴交于A、B两点,与y轴交于C点,记三角形ABC的面积为S,试求S=f(k)的解析式.求详细解题过程。谢谢。 114博采什么意思? 天空体育博采什么意思? 集合P={x丨x=sin(kπ/2,k∈Z}的子集的个数 已知集合A=[x|x=sin(n60°),n∈Z],若B是A子集,则集合B的个数有多少? x平方+1分之(x+1)平方的最大值如题,这一类题我都不会 《走近毛泽东》观后感麻烦各位帮忙写一篇观后感,要写出自己对毛泽东有什么看法和认识,有看过的帮帮忙,重分酬谢 正确的人生观世界观是什么 已知集合A={x|x∈N,x 超帅奶爸贝克汉姆宠爱七公主有爱全记录斯诺登莫斯科生活照曝光 休闲打扮未戴日连续监视中国海军动向 我舰队冲绳掉主持人身穿“平”字服道歉金正恩接见朝鲜军人建设者 盛赞其英雄普京治下的“俄式反腐”值得借鉴教皇方济各电话被曝长期遭美国国安局监ABC主持人就辱华言论双手合十鞠躬道港媒:中国将会从美国国家安全局丑闻中菲律宾万圣节举行“重口味”游行(高清日舰强闯我演习区滞留70小时暴力救市,危机解除风险犹在迷人马尾扎发 ,让整个冬季俏丽起来!全球头条 (Jul 14, 2015各个年龄段女性气质搭配法则股市大震荡给“创业”运动蒙上阴影分享 | 迅速提升个人品味的微信阎焱:创业成功者大多在30-38岁,1.5米的小个子女人,却用她的穿搭征从《大圣归来》漫谈 IP 现象6大万能搭配秘籍,让你的冬天性感又温七月重磅,《三体》来袭存活计划重生之网络霸业超强盗匪末日修仙情报员时空当铺深宅迷情重生之盛世皇后媚妃休夫江湖证道曲国术仙途凤行末世佛陀纪念馆旅游香积寺旅游杜陵旅游南饮泉旅游德化岱仙瀑布旅游浙北大峡谷旅游鸦片战争博物馆旅游智圣汤泉旅游度假村旅游波浪谷旅游红岩大峡谷旅游清迈古城墙旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘