正文

利用VB产生屏幕变暗的效果2006-02-15 22:10:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/stef/10149.html

分享到:

想利用VB编程实现屏幕变暗的效果(向关闭Win95时的效果),只要按下面的步骤来做1、在Form1中加入两个CommandButton和一个PictureBox.2、在Form1的代码窗口中添加以下代码:Private Type RECTLeft As LongTop As LongRight As LongBottom As LongEnd TypePrivate Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As LongPrivate Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As LongPrivate Declare Function CreatePatternBrush Lib "gdi32" (ByVal hBitmap As Long) As LongPrivate Declare Function PatBlt Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal dwRop As Long) As LongPrivate Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As LongPrivate Declare Function CreateBitmap Lib "gdi32" (ByVal nWidth As Long, ByVal nHeight As Long, ByVal nPlanes As Long, ByVal nBitCount As Long, lpBits As Any) As LongPrivate Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As LongPrivate Declare Function InvalidateRect Lib "user32" (ByVal hwnd As Long, ByVal lpRect As Long, ByVal bErase As Long) As LongPrivate bybits(1 To 16) As BytePrivate hBitmap As Long, hBrush As LongPrivate hDesktopWnd As LongPrivate Sub Command1_Click()Dim rop As Long, res As LongDim hdc5 As Long, width5 As Long, height5 As Longhdc5 = GetDC(0)width5 = Screen.Width \ Screen.TwipsPerPixelXheight5 = Screen.Height \ Screen.TwipsPerPixelYrop = &HA000C9Call SelectObject(hdc5, hBrush)res = PatBlt(hdc5, 0, 0, width5, height5, rop)Call DeleteObject(hBrush)res = ReleaseDC(0, hdc5)End SubPrivate Sub Command2_Click()Dim aa As Long aa = InvalidateRect(0, 0, 1)End SubPrivate Sub Form_Load()Dim aryDim i As Longary = Array(&H55, &H0, &HAA, &H0, _&H55, &H0, &HAA, &H0, _&H55, &H0, &HAA, &H0, _&H55, &H0, &HAA, &H0)For i = 1 To 16bybits(i) = ary(i - 1)Next ihBitmap = CreateBitmap(8, 8, 1, 1, bybits(1))hBrush = CreatePatternBrush(hBitmap)Picture1.ForeColor = RGB(0, 0, 0)Picture1.BackColor = RGB(255, 255, 255)Picture1.ScaleMode = 3End Sub运行程序,按Command1就可以使屏幕暗下来,按Command2恢复。--------------------------------------------------

阅读(2441) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册