Formulario transparente con C# y VB

Desde C# podemos hacer fácilmente un formulario transparente o semitransparente. Un formulario de WindowsForms que están dentro del nombre de espacio System.Windows.Forms (lo que viene siendo el típico formulario) tiene una propiedad de tipo doble que se llama Opacity. Con esta propiedad, podemos indicar un valor entre 0 y 1, el valor 0 indica completamente transparente y 1 indica que es opaco (como son los formularios por defecto).

Este efecto puede ser útil para realizar efectos visuales que hagan mas agradable el uso de nuestra aplicación, como por ejemplo mostrar mensajes de alerta con un toque de transparencia con por ejemplo entre 90% y 95% de transparencia o por ejemplo capturar el evento cuando se mueve un formulario y efectuar una transparencia mientras este se encuentre en movimiento.

En CSharp

Form formulario = new Form();
formulario.Opacity = 0.50;
formulario.Show();

En Visual Basic

Dim formulario As New Form()
formulario.Opacity = 0.50
formulario.Show()

Corrección

aundlang comenta acertadamente que el formulario.Opacity es de 0 a 1 y no de 0 a 100. Corrijo la entrada

8 comentarios en “Formulario transparente con C# y VB

  1. se puede hacer transparente el form, en tiempo de ejecucion?, si tienes tiempo te agradeceria que me mandaras un correo porfavor, de ante mano gracias...

  2. Bueno, pido perdon por no poner un ejemplo, asi que edito la entrada para añadir dicho ejemplo. Por supuesto si se puede poner en tiempo de ejecucion, pero dependera del framework

  3. creo que la sintaxis correcta es:
    Form formulario = new Form();
    formulario.Opacity = .5;
    formulario.Show();
    ya que el valor de la propiedad Opaciti es double y va de 0 a 1

    1. Es por todos conocidos que Basic no usa comas, un simple detalle que un buen programador sabe... no es necesario decir que está mal. Se le conoce como error típico de programación.

      1. Los dos tenéis razón. El motivo por el que tendrían punto y coma es que lo seguramente lo hice en C# y lo traduje sobre la marcha y se me olvidaría quitarlas.

        Gracias por comentarlo

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *