⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 33.txt

📁 介绍VB里的各种控件的使用方法,窗口控制,图像编程以及OCX等内容,还提供了一个API集供参考.
💻 TXT
字号:
如何在窗体中平铺图片?
 


  本文介绍怎样用一个图片(例如BMP)平铺在窗口并完全覆盖它。
  我们常常有需要使用一幅小图去覆盖一个窗口或者窗口的一部分。这正是设计那些小图的目的。它们以原来的尺寸作为背景排列在要覆盖的窗口上,这种技术就叫“平铺”。
  VB没有提供平铺图片到窗口的标准功能。要做到这点,我们必须使用WINDOWS API和一些图形技术。
  操作步骤:
  1、建立一个新工程项目,缺省建立窗体FORM1
  2、添加一个新模体
  3、粘贴下面代码到新模体
Option Explicit
Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, _
 ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, _
 ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Public RetValue As Long
Public Sub TileWindow(WindowObject As Object, p As PictureBox)
  Dim j As Integer, i As Integer
  Dim x As Integer
  Dim WhDC As Long 
  ' This object can be any VB standard object with an hWnd property
  WhDC = GetDC(WindowObject.hwnd) 
  For j = 0 To WindowObject.Height Step p.ScaleHeight
    For i = 0 To WindowObject.Width Step p.ScaleWidth
      x = BitBlt(WhDC, i, j, p.ScaleWidth, p.ScaleHeight, p.hDC, 0, 0, vbSrcCopy)
    Next
  Next
End Sub
  4、添加一个图片框控件(PICUTRE1),设置其SCALEMODE属性=3-PIXEL,AUTOREDRAW属性=TURE,AUTOSIZE属性=TURE。在PICTURE属性中选择一幅图。
  5、添加以下代码到FORM1的PAINT事件:
Private Sub Form_Paint()
  TileWindow Me, Picture1
End Sub
  6、保存工程项目
  7、运行程序。当显示出窗体后,可以看到图片“平铺”到整个窗体。
  注意:尽管这种方法显示能够在任何支持hWnd属性的控件上平铺图片,但仍必须留意哪些控件支持PAINT方法
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -