SlideShare una empresa de Scribd logo
En el código fuente hay una función llamada Redondear_Formulario.

En el primer parámetro de la función hay que pasarle como parámetro, el formulario que
queremos aplicar el esquinado, y en el otro parámetro el valor del radio, mientras mas
grande sea el valor que le pasemos, el formulario mas redondo será.



Por ejemplo para usarlo con el form actual con un valor de 150

Call Redondear_Formulario(Me, 150)



Nota: Se debe quitar los bordes al formulario mediante la propiedad BorderStyle con el
valor 0


Otro detalle a tener en cuenta es que, si le sacamos la barra de titulo, ya no podemos mover
el formulario. Esto lo podemos solucionar con la función Api RelaseCapture y
SendMessage para poder hacer un Drag o arrastre sobre el mismo. Este ejemplo para
arrastrar controles y formularios mediante el Api lo podés ver en la página siguiente a esta.
Código fuente en el formulario

Texto planoImprimir

   1.   Option Explicit
   2.
   3.
   4.   'Declaraciones de funciones Api
   5.
   6.  ' Crea la región
   7.  Private Declare Function CreateRoundRectRgn Lib "gdi32" ( _
   8.     ByVal X1 As Long, _
   9.     ByVal Y1 As Long, _
   10. ByVal X2 As Long, _
   11. ByVal Y2 As Long, _
   12. ByVal X3 As Long, _
   13. ByVal Y3 As Long) As Long
   14.
   15. 'Establece la región
   16. Private Declare Function SetWindowRgn Lib "user32" ( _
   17. ByVal hwnd As Long, _
18. ByVal hRgn As Long, _
19. ByVal bRedraw As Boolean) As Long
20.
21.
22. Private Sub Redondear_Formulario(El_Form As Form, Radio As Long)
23.
24. Dim Region As Long
25. Dim Ret As Long
26. Dim Ancho As Long
27. Dim Alto As Long
28. Dim old_Scale As Integer
29.
30. ' guardar la escala
31. old_Scale = El_Form.ScaleMode
32.
33. ' cambiar la escala a pixeles
34. El_Form.ScaleMode = vbPixels
35.
36. 'Obtenemos el ancho y alto de la region del Form
37. Ancho = El_Form.ScaleWidth
38. Alto = El_Form.ScaleHeight
39.
40. 'Pasar el ancho alto del formualrio y el valor de redondeo .. es decir el radio
41. Region = CreateRoundRectRgn(0, 0, Ancho, Alto, Radio, Radio)
42.
43. ' Aplica la región al formulario
44. Ret = SetWindowRgn(El_Form.hwnd, Region, True)
45.
46. ' restaurar la escala
47. El_Form.ScaleMode = old_Scale
48.
49. End Sub
50.
51. Private Sub Form_Load()
52.
53.
54.
55.
56. MsgBox "Quitarle el borde al formulario: Border Style en 0", vbInformation
57.
58. ' Le pasamos el formulario y el radio de redondeo
59. Call Redondear_Formulario(Me, 100)
60.
61. End Sub

Más contenido relacionado

La actualidad más candente

Combobox
ComboboxCombobox
Ojaso oferta-y-demanda-problemas-resueltos[1]
Ojaso oferta-y-demanda-problemas-resueltos[1]Ojaso oferta-y-demanda-problemas-resueltos[1]
Ojaso oferta-y-demanda-problemas-resueltos[1]
GoXzzy
 
EJERCICIO EQUILIBRIO DE MERCADO
EJERCICIO EQUILIBRIO DE MERCADOEJERCICIO EQUILIBRIO DE MERCADO
EJERCICIO EQUILIBRIO DE MERCADO
CARLOS MASSUH
 
Funcion costo
Funcion costoFuncion costo
Funcion costo
ruth mendoza
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
Videoconferencias UTPL
 
Arreglos
ArreglosArreglos
Arreglos
Clariza
 
Derivadas
DerivadasDerivadas

La actualidad más candente (7)

Combobox
ComboboxCombobox
Combobox
 
Ojaso oferta-y-demanda-problemas-resueltos[1]
Ojaso oferta-y-demanda-problemas-resueltos[1]Ojaso oferta-y-demanda-problemas-resueltos[1]
Ojaso oferta-y-demanda-problemas-resueltos[1]
 
EJERCICIO EQUILIBRIO DE MERCADO
EJERCICIO EQUILIBRIO DE MERCADOEJERCICIO EQUILIBRIO DE MERCADO
EJERCICIO EQUILIBRIO DE MERCADO
 
Funcion costo
Funcion costoFuncion costo
Funcion costo
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Arreglos
ArreglosArreglos
Arreglos
 
Derivadas
DerivadasDerivadas
Derivadas
 

Destacado

"Android de la A a la Z" -- Unidad 5
"Android de la A a la Z" -- Unidad 5"Android de la A a la Z" -- Unidad 5
"Android de la A a la Z" -- Unidad 5
Android UNAM
 
Ord. serv. pasaj.
Ord. serv. pasaj.Ord. serv. pasaj.
Ord. serv. pasaj.
nera24mx
 
4 a
4 a4 a
Reunion rf 10-1
Reunion rf 10-1Reunion rf 10-1
Reunion rf 10-1
nera24mx
 
Oracle OpenWorld 2014 GRC events and sessions
Oracle OpenWorld 2014 GRC events and sessionsOracle OpenWorld 2014 GRC events and sessions
Oracle OpenWorld 2014 GRC events and sessions
Oracle
 
Infocom 2009
Infocom 2009Infocom 2009
Infocom 2009
nera24mx
 
Estado del ejer. 2009
Estado del ejer. 2009Estado del ejer. 2009
Estado del ejer. 2009nera24mx
 
Manual org cbta tipo a 2010
Manual org cbta tipo a 2010Manual org cbta tipo a 2010
Manual org cbta tipo a 2010
nera24mx
 
Anexo 4 2010
Anexo 4 2010Anexo 4 2010
Anexo 4 2010
nera24mx
 
Comperco
CompercoComperco
Comperco
nera24mx
 
Manual Android Creator
Manual Android CreatorManual Android Creator
Manual Android Creator
Paul Quinde
 
Editor
EditorEditor
Editor
nera24mx
 
Con8208 achieve a quicker and compliant financial close
Con8208 achieve a quicker and compliant financial closeCon8208 achieve a quicker and compliant financial close
Con8208 achieve a quicker and compliant financial close
Oracle
 
Saber si estamos o no conectados a internet
Saber si estamos o no conectados a internetSaber si estamos o no conectados a internet
Saber si estamos o no conectados a internet
nera24mx
 
Orden de min. viat.
Orden de min. viat.Orden de min. viat.
Orden de min. viat.
nera24mx
 
V. liqviat 2009
V. liqviat 2009V. liqviat 2009
V. liqviat 2009
nera24mx
 
Resena fot
Resena fotResena fot
Resena fotnera24mx
 
Control Data
Control DataControl Data
Control Data
nera24mx
 
Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...
Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...
Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...
Oracle
 

Destacado (20)

"Android de la A a la Z" -- Unidad 5
"Android de la A a la Z" -- Unidad 5"Android de la A a la Z" -- Unidad 5
"Android de la A a la Z" -- Unidad 5
 
Ord. serv. pasaj.
Ord. serv. pasaj.Ord. serv. pasaj.
Ord. serv. pasaj.
 
Cifras
CifrasCifras
Cifras
 
4 a
4 a4 a
4 a
 
Reunion rf 10-1
Reunion rf 10-1Reunion rf 10-1
Reunion rf 10-1
 
Oracle OpenWorld 2014 GRC events and sessions
Oracle OpenWorld 2014 GRC events and sessionsOracle OpenWorld 2014 GRC events and sessions
Oracle OpenWorld 2014 GRC events and sessions
 
Infocom 2009
Infocom 2009Infocom 2009
Infocom 2009
 
Estado del ejer. 2009
Estado del ejer. 2009Estado del ejer. 2009
Estado del ejer. 2009
 
Manual org cbta tipo a 2010
Manual org cbta tipo a 2010Manual org cbta tipo a 2010
Manual org cbta tipo a 2010
 
Anexo 4 2010
Anexo 4 2010Anexo 4 2010
Anexo 4 2010
 
Comperco
CompercoComperco
Comperco
 
Manual Android Creator
Manual Android CreatorManual Android Creator
Manual Android Creator
 
Editor
EditorEditor
Editor
 
Con8208 achieve a quicker and compliant financial close
Con8208 achieve a quicker and compliant financial closeCon8208 achieve a quicker and compliant financial close
Con8208 achieve a quicker and compliant financial close
 
Saber si estamos o no conectados a internet
Saber si estamos o no conectados a internetSaber si estamos o no conectados a internet
Saber si estamos o no conectados a internet
 
Orden de min. viat.
Orden de min. viat.Orden de min. viat.
Orden de min. viat.
 
V. liqviat 2009
V. liqviat 2009V. liqviat 2009
V. liqviat 2009
 
Resena fot
Resena fotResena fot
Resena fot
 
Control Data
Control DataControl Data
Control Data
 
Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...
Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...
Stop the fraudster! Pennsylvania Treasury, Industry Expert Chris Doxey and Fu...
 

Similar a Redondea

cap7.pdf
cap7.pdfcap7.pdf
cap7.pdf
Gonzalo Fano
 
Tareafunciones
TareafuncionesTareafunciones
Tareafunciones
Sol Hernández
 
Metodos funciones
Metodos funcionesMetodos funciones
Metodos funciones
eulo10
 
AUTOCAD INICIAL UA4.pdf
AUTOCAD INICIAL UA4.pdfAUTOCAD INICIAL UA4.pdf
AUTOCAD INICIAL UA4.pdf
GabrielCampuzanoQuis
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
rey
 
Evaluacion 3er parcial
Evaluacion 3er parcialEvaluacion 3er parcial
Evaluacion 3er parcial
Erick Paul Lozada Peñarreta
 
S03.s1 - Estructuras secuenciales (1).pptx
S03.s1 - Estructuras secuenciales (1).pptxS03.s1 - Estructuras secuenciales (1).pptx
S03.s1 - Estructuras secuenciales (1).pptx
brendaguerreromonten
 
Informe técnico 1
Informe técnico 1Informe técnico 1
Informe técnico 1
Saya Paredes
 
Temaswing
TemaswingTemaswing
Temaswing
guest70285f
 
Practica área
Practica áreaPractica área
Practica área
BangMiriam3003
 
Formulario con transparencia
Formulario con transparenciaFormulario con transparencia
Formulario con transparencia
nera24mx
 
Vb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos GraficosVb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos Graficos
UTP, TA
 
Bases para programar en C#
Bases para programar en C#Bases para programar en C#
Bases para programar en C#
Edi Andrade
 
Bases para programar en C#
Bases para programar en C#Bases para programar en C#
Bases para programar en C#
Edi Andrade
 
8
88
8
V3NC
 
8
88
Macros en Excel PT. 2
Macros en Excel PT. 2Macros en Excel PT. 2
Macros en Excel PT. 2
katia.espinosa
 
Separata java script
Separata java scriptSeparata java script
Separata java script
Carlos Enrique Huamán Solis
 
Roberto orta salinas
Roberto orta salinasRoberto orta salinas
Roberto orta salinas
mezano09
 
Roberto orta salinas
Roberto orta salinasRoberto orta salinas
Roberto orta salinas
Angel Perez
 

Similar a Redondea (20)

cap7.pdf
cap7.pdfcap7.pdf
cap7.pdf
 
Tareafunciones
TareafuncionesTareafunciones
Tareafunciones
 
Metodos funciones
Metodos funcionesMetodos funciones
Metodos funciones
 
AUTOCAD INICIAL UA4.pdf
AUTOCAD INICIAL UA4.pdfAUTOCAD INICIAL UA4.pdf
AUTOCAD INICIAL UA4.pdf
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Evaluacion 3er parcial
Evaluacion 3er parcialEvaluacion 3er parcial
Evaluacion 3er parcial
 
S03.s1 - Estructuras secuenciales (1).pptx
S03.s1 - Estructuras secuenciales (1).pptxS03.s1 - Estructuras secuenciales (1).pptx
S03.s1 - Estructuras secuenciales (1).pptx
 
Informe técnico 1
Informe técnico 1Informe técnico 1
Informe técnico 1
 
Temaswing
TemaswingTemaswing
Temaswing
 
Practica área
Practica áreaPractica área
Practica área
 
Formulario con transparencia
Formulario con transparenciaFormulario con transparencia
Formulario con transparencia
 
Vb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos GraficosVb Ii, Unidad Iv MéTodos Graficos
Vb Ii, Unidad Iv MéTodos Graficos
 
Bases para programar en C#
Bases para programar en C#Bases para programar en C#
Bases para programar en C#
 
Bases para programar en C#
Bases para programar en C#Bases para programar en C#
Bases para programar en C#
 
8
88
8
 
8
88
8
 
Macros en Excel PT. 2
Macros en Excel PT. 2Macros en Excel PT. 2
Macros en Excel PT. 2
 
Separata java script
Separata java scriptSeparata java script
Separata java script
 
Roberto orta salinas
Roberto orta salinasRoberto orta salinas
Roberto orta salinas
 
Roberto orta salinas
Roberto orta salinasRoberto orta salinas
Roberto orta salinas
 

Más de nera24mx

Archivo
ArchivoArchivo
Archivo
nera24mx
 
Archivos
ArchivosArchivos
Archivos
nera24mx
 
Cartel
CartelCartel
Cartel
nera24mx
 
Censo
CensoCenso
Censo
nera24mx
 
Censo
CensoCenso
Censo
nera24mx
 
Los informes
Los informesLos informes
Los informes
nera24mx
 
Consultas
ConsultasConsultas
Consultas
nera24mx
 
Tablas
TablasTablas
Tablas
nera24mx
 
Relaciones
RelacionesRelaciones
Relacionesnera24mx
 
Listas 4 A
Listas 4 AListas 4 A
Listas 4 A
nera24mx
 
El Modelo Er
El Modelo ErEl Modelo Er
El Modelo Er
nera24mx
 

Más de nera24mx (14)

Archivo
ArchivoArchivo
Archivo
 
Archivos
ArchivosArchivos
Archivos
 
Cartel
CartelCartel
Cartel
 
Censo
CensoCenso
Censo
 
Censo
CensoCenso
Censo
 
Los informes
Los informesLos informes
Los informes
 
Consultas
ConsultasConsultas
Consultas
 
Tablas
TablasTablas
Tablas
 
Relaciones
RelacionesRelaciones
Relaciones
 
Listas
ListasListas
Listas
 
Listas
ListasListas
Listas
 
17 Marzo
17 Marzo17 Marzo
17 Marzo
 
Listas 4 A
Listas 4 AListas 4 A
Listas 4 A
 
El Modelo Er
El Modelo ErEl Modelo Er
El Modelo Er
 

Redondea

  • 1. En el código fuente hay una función llamada Redondear_Formulario. En el primer parámetro de la función hay que pasarle como parámetro, el formulario que queremos aplicar el esquinado, y en el otro parámetro el valor del radio, mientras mas grande sea el valor que le pasemos, el formulario mas redondo será. Por ejemplo para usarlo con el form actual con un valor de 150 Call Redondear_Formulario(Me, 150) Nota: Se debe quitar los bordes al formulario mediante la propiedad BorderStyle con el valor 0 Otro detalle a tener en cuenta es que, si le sacamos la barra de titulo, ya no podemos mover el formulario. Esto lo podemos solucionar con la función Api RelaseCapture y SendMessage para poder hacer un Drag o arrastre sobre el mismo. Este ejemplo para arrastrar controles y formularios mediante el Api lo podés ver en la página siguiente a esta.
  • 2. Código fuente en el formulario Texto planoImprimir 1. Option Explicit 2. 3. 4. 'Declaraciones de funciones Api 5. 6. ' Crea la región 7. Private Declare Function CreateRoundRectRgn Lib "gdi32" ( _ 8. ByVal X1 As Long, _ 9. ByVal Y1 As Long, _ 10. ByVal X2 As Long, _ 11. ByVal Y2 As Long, _ 12. ByVal X3 As Long, _ 13. ByVal Y3 As Long) As Long 14. 15. 'Establece la región 16. Private Declare Function SetWindowRgn Lib "user32" ( _ 17. ByVal hwnd As Long, _
  • 3. 18. ByVal hRgn As Long, _ 19. ByVal bRedraw As Boolean) As Long 20. 21. 22. Private Sub Redondear_Formulario(El_Form As Form, Radio As Long) 23. 24. Dim Region As Long 25. Dim Ret As Long 26. Dim Ancho As Long 27. Dim Alto As Long 28. Dim old_Scale As Integer 29. 30. ' guardar la escala 31. old_Scale = El_Form.ScaleMode 32. 33. ' cambiar la escala a pixeles 34. El_Form.ScaleMode = vbPixels 35. 36. 'Obtenemos el ancho y alto de la region del Form 37. Ancho = El_Form.ScaleWidth 38. Alto = El_Form.ScaleHeight 39. 40. 'Pasar el ancho alto del formualrio y el valor de redondeo .. es decir el radio 41. Region = CreateRoundRectRgn(0, 0, Ancho, Alto, Radio, Radio) 42. 43. ' Aplica la región al formulario 44. Ret = SetWindowRgn(El_Form.hwnd, Region, True) 45. 46. ' restaurar la escala 47. El_Form.ScaleMode = old_Scale 48. 49. End Sub 50. 51. Private Sub Form_Load() 52. 53. 54. 55. 56. MsgBox "Quitarle el borde al formulario: Border Style en 0", vbInformation 57. 58. ' Le pasamos el formulario y el radio de redondeo 59. Call Redondear_Formulario(Me, 100) 60. 61. End Sub