[SOLUCIONADO] Puntas Redondeadas en un form

Iniciado por e500, 1 Septiembre 2010, 22:50 PM

0 Miembros y 3 Visitantes están viendo este tema.

BlackZeroX

Cita de: Dessa en  3 Septiembre 2010, 02:27 AM
[SNIPPET]  "Puntas Redondeadas en un form"



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()
  Call SetWindowRgn(Me.hwnd, CreateRoundRectRgn(0, 0, Me.Width / 15, Me.Height / 15, 10, 10), True)
End Sub



Saludos



Cabe decir que el 15 es lo que equivale a un Twin es decir

15 Twin = 1 pixel

Por lo dicho se debera de espesificar esto, o tomar las dimensiones con GetWindowRect... para evitar errores

Otra cosa

Si, se llegase a cambiar la resolución la clase Screen NO ACTUALIZA los valores Width y Height  del mismo, habra que usar APIS!¡.

Dulces Lunas!¡.
The Dark Shadow is my passion.

Dessa

#11
Particularmente uso esto en para formularios simples, sin Bordes o con borde transparente ,  vale la aclaracion de  BlackZeroX


http://www.megaupload.com/?d=819VEP1W

















Adrian Desanti

e500

@Dessa te pasaste!!! gracias es eso lo que quería!!!!

Saludos

seba123neo

Cita de: BlackZeroX en 22 Septiembre 2010, 06:37 AM

Cabe decir que el 15 es lo que equivale a un Twin es decir

15 Twin = 1 pixel


aclaro que la medida es Twip y no Twin (gemelo en ingles)


Twip
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson