|
|
![]() |
|
||
|
|
|||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
||
| Visual Basic
Window/Form Routines Pure VB: Tile an Image as a Form Background |
||
| Posted: | February 27, 1997 | |
| Updated: | Monday December 26, 2011 | |
| Applies to: | VB4-16, VB4-32, VB5, VB6 | |
| Developed with: | VB4-32, Windows 95 | |
| OS restrictions: | None | |
| Author: | VBnet - Randy Birch | |
|
Related: |
FillRect: Gradient Form Backgrounds GradientFill: Gradient Form Backgrounds GradientFill: Triangular Gradient Form Backgrounds Pure VB: Tile an Image as a Form Background |
|
| Prerequisites |
| Suitable Image for the background. |
|
|
Tiling
a bitmap, metafile (and with VB5, a gif or jpeg) is easy using the PaintPicture method. The code below shows two routines you can place
into a form's Paint event to either tile an image across the entire form, or to create a image running along the edge.
Both methods need only one hidden image control each (preloaded in this example with the images to tile). A picture box could also be used for the image(s) to tile, but the added resources used by a picture box aren't warranted in this example. Start a new project, and on the form place either an Image or Picture control. Set the control's Picture property to the bitmap or metafile (gif or jpeg as well in VB5/6), that you want to use as the form's background image. Set the control Visible to False.
|
| BAS Module Code |
| None. |
|
|
| Form Code |
|
|
| To the form, add the following code: |
|
|
Option Explicit '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Copyright ©1996-2011 VBnet/Randy Birch, All Rights Reserved. ' Some pages may also contain other copyrights by the author. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ' Distribution: You can freely use this code in your own ' applications, but you may not reproduce ' or publish this code on any web site, ' online service, or distribute as source ' on any media without express permission. '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Private Sub Form_Paint()
Dim X As Integer, Y As Integer
Dim ImgWidth As Integer
Dim ImgHeight As Integer
Dim FrmWidth As Integer
Dim FrmHeight As Integer
'use Image1 or Picture1, as appropriate.
'use one of the following PaintPicture methods:
ImgWidth = Image1.Width
ImgHeight = Image1.Height
FrmWidth = Form1.Width
FrmHeight = Form1.Height
'tile entire form (Method 1)
For X = 0 To FrmWidth Step ImgWidth
For Y = 0 To FrmHeight Step ImgHeight
PaintPicture Image1, X, Y
Next Y
Next X
'tile left side (Method 2)
'For Y = 0 To FrmHeight Step ImgHeight
' PaintPicture Image1, 0, Y
'Next Y
End Sub |
| Comments |
| Run the project ...the image will paint across the form
dependant on the method used. Web background image galleries provide a great place to grab interesting background images.
For VB4, JPEG and GIF backgrounds must be converted to bitmaps or metafiles by a third-party image manipulation program before you can use them. The PaintPicture method is not available in VB3. |
|
|
|
|
|
|||||
|
|||||
|
|
|||||
|
Copyright ©1996-2011 VBnet and Randy Birch. All Rights Reserved. |
![]() |