图老师设计创意栏目是一个分享最好最实用的教程的社区,我们拥有最用心的各种教程,今天就给大家分享如何将整个画面暗下来如同关机前一般的教程,热爱PS的朋友们快点看过来吧!
【 tulaoshi.com - 编程语言 】
Private Type RECT Left As Long Top As Long Right As Long Bottom 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 Long'将图变暗,如同待关机一般Private Sub Command1_Click()Dim rop As Long, res As LongDim hdc5 As Long, width5 As Long, height5 As Long'如果只要让Picture1有效果将底下三行unMark取代 hdc5, width5, height5三个值'hdc5 = Picture1.hdc'width5 = Picture1.ScaleWidth'height5 = Picture1.ScaleHeight'底下三行设定整个萤幕都暗下来hdc5 = GetDC(0)width5 = Screen.Width Screen.TwipsPerPixelXheight5 = Screen.Height Screen.TwipsPerPixelYrop = &HA000C9 '与原图做and运算Call SelectObject(hdc5, hBrush)res = PatBlt(hdc5, 0, 0, width5, height5, rop)Call DeleteObject(hBrush)'如果只暗picture1则底下这一行要mark起来res = ReleaseDC(0, hdc5)End Sub'回复原本的画面Private Sub Command2_Click()Dim aa As Long'如果只暗picture1则底下这一行要unMark起来'Picture1.Refresh'如果只暗picture1则底下这一行要mark起来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 16 bybits(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
来源:http://www.tulaoshi.com/n/20160219/1613336.html
看过《如何将整个画面暗下来如同关机前一般》的人还看了以下文章 更多>>