分享

定制化窗体之闪烁窗体标题栏(1)

 yuxinrong 2009-10-22

    

 定制化窗体之闪烁窗体标题栏

    

 Excel2000及其以后版本

    

  本示例运用API函数来定制Excel中的用户窗体,使窗体标题栏闪烁。(Code By wangminbai)

有的程序,其可以闪烁标题来提醒用户。其实在VBA的用户窗体也可以闪烁窗体标题。实现如下:

l         Excel VBE窗口中插入一个用户窗体,将其命名为 FlashForm。然后再添加一个模块。在窗体和模块中添加后面所列代码。

l         在工作薄中的任意工作表中添加一窗体按钮控件,将指定其 设置宏 ShowForm。其供示范之用

l         代码:

模块1代码

Option Explicit

'//****************************************************************************************************************************************

'//以下声明API函数

'//闪烁窗口

Private Declare Function FlashWindow _

    Lib "user32" ( _

        ByVal hwnd As Long, _

        ByVal bInvert As Long) _

As Long

'//查找窗口

Private Declare Function FindWindow _

    Lib "user32" _

    Alias "FindWindowA" ( _

        ByVal lpClassName As String, _

        ByVal lpWindowName As String) _

As Long

'//****************************************************************************************************************************************

'//Settimer函数的回调函数

Public Function TimeOutProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal idEvent As Long, ByVal SysTime As Long) As Long

   Dim HwndForm As Long

   '//取得窗口句柄

   HwndForm = FindWindow(vbNullString, FlashForm.Caption)

   '//闪烁窗口200毫秒

   FlashWindow HwndForm, 200

End Function

'//--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

'//****************************************************************************************************************************************

'//此过程为工作表中按钮所调用

'//****************************************************************************************************************************************

Sub ShowForm()

       '//显示窗体

    FlashForm.Show

End Sub

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多