c贸mo crear una rejilla de cuadros de imagen?

rocio
15 de Diciembre del 2003
hola!
tienes alguna idea de c贸mo puedo crear una rejilla de imagenes que se cargue r谩pidamente?

ya hice una, pero tarda un buen tiempo, necesito que sea de 100 X 100.

Gracias por tu ayuda! = )

esto es lo que escrib铆
Private Sub Form_Load()
alto = Image1(0).Height
ancho = Image1(0).Width
Image1(0).Appearance = 0
Image1(0).BorderStyle = 1

Fila = 0
Columna = 0
For i = 1 To 6399
Load Image1(i)

Image1(i).BorderStyle = 1
Image1(i).Appearance = 0
Image1(i).Visible = True
If i Mod 80 = 0 Then
Fila = Fila + alto
Columna = 0
Else
Columna = Columna + ancho
End If
Image1(i).Top = Fila
Image1(i).Left = Columna
Next i
END SUB.

virus b
15 de Diciembre del 2003
Hola Rocio:
En visual basic tienes a tu disposicion la funcion PaintPicture. Es re-facil de usar, pero si estas buscando velocidad, me parece que el c贸digo enviado por Juan es la soluci贸n.
Saludos
Pablo B

Juan
15 de Diciembre del 2003
Primero que nada, he probado tu c贸digo y no me iba
demasiado lento. Por otro lado, si lo que pretendes es
simplemente hacer un fondo tipo mosaicome parece
m谩s pr谩ctico y r谩pido dibujarlo con la funci贸n BitBlt.

Aqu铆 te pongo el c贸digo de ejemplo, es muy importante
que el form tenga Autoredraw=True, y que la imagen a
dubujar est茅 asignada a su propiedad Picture, no se
necesita ning煤n control image:

Private 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
Private Const SRCCOPY = &HCC0020 ' (DWORD) dest = origen


Private Sub Form_Load()
Dim alto As Long, ancho As Long
Dim fila As Single, columna As Single, i As Integer
alto = Me.Picture.Height / (Screen.TwipsPerPixelY * 2)
ancho = Me.Picture.Width / (Screen.TwipsPerPixelX * 2)

fila = 0
columna = 0
For i = 1 To 9999
If i Mod 100 = 0 Then
fila = fila + alto
columna = 0
Else
columna = columna + ancho
End If
BitBlt Me.hDC, columna, fila, ancho, alto, Me.hDC, 0, 0, SRCCOPY
Next i
End Sub