Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: skyweb07 en Agosto 28, 2009, 10:26:11 am

Título: [Pregunta] Redondear Bordes Imagen
Publicado por: skyweb07 en Agosto 28, 2009, 10:26:11 am
Pués mi pregunta como dice el titulo es algo como redondear los bordes de las imagenes para que quede algo como esto

(http://www.bloginformatico.com/wp-content/uploads/2007/11/prueba-de-roundpic.jpg)

Es para un proyecto de Youtube o algo asi es solo para que cuando obtenga las imagenes de las canciones las redondee y quede mas chulo...  ;D
Título: Re:[Pregunta] Redondear Bordes Imagen
Publicado por: LeandroA en Agosto 28, 2009, 03:20:47 pm
Hola una forma raipida de hacer esto es con regiones sobre un picturebox

Código: [Seleccionar]
Option Explicit
Private Declare Function CreateRoundRectRgn Lib "gdi32" (ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, ByVal X3 As Long, ByVal Y3 As Long) As Long
Private Declare Function SetWindowRgn Lib "user32" (ByVal hWnd As Long, ByVal hRgn As Long, ByVal bRedraw As Boolean) As Long

Private Sub Form_Load()
CreateRoundPicture Picture1
End Sub


Public Function CreateRoundPicture(PicBox As PictureBox)
    Dim hRgn As Long
    Dim OldScale As Long
    OldScale = PicBox.ScaleMode
    PicBox.ScaleMode = vbPixels
    hRgn = CreateRoundRectRgn(0, 0, PicBox.ScaleWidth, PicBox.ScaleHeight, 20, 20)
    SetWindowRgn PicBox.hWnd, hRgn, True
    PicBox.ScaleMode = OldScale
End Function



(http://img149.imageshack.us/img149/483/image1qnv.png)

si lo notas asi la diferencia no es mucha pero bien, no esta trabajando con difuminación, si haces zoom ves que es otro el tipo de recorte
(http://img149.imageshack.us/img149/5128/image3xkt.png)

ya para hacer eso tendrias o que trabajar con GDI++ o bien trabajando el array de la imagen u otra chanchada que se me ocurre es crear cuatro iconos de 32bits (Esquinas) y lo repintas sobre el picturebox

Te sirve igual?

Saludos
Título: Re:[Pregunta] Redondear Bordes Imagen
Publicado por: skyweb07 en Agosto 28, 2009, 04:29:00 pm
Hey Leandro muchas gracias por la ayuda quedo perfecto en el listview queda de 10 ;) Saludos de Skyweb07 Cuidate  ;D