Colabora
 

Efecto de Windows Vista

Simular efecto de Windows Vista cuando se abre una aplicación que ponga en riesgo la PC

 

Fecha: 23/Mar/2007 (22-Mar-2007)
Autor: Luis Enrqiue Castillo L.
Mail: lecastillo@utpl.edu.ec
MSN: phanthom2k@hotmail.com

 


Introducción

El nuevo sistema operativo de Microsoft (Windows Vista) trae mejoras en su interfaz gráfica como ya algunos conocemos. Entre lo llamativo de la interfaz hay una parte que me gusta, y es cuando se abre una aplicación y Windows piensa que puede poner en peligro el sistema por lo que  muestra un mensaje de advertencia y por detrás la pantalla  toma una tonalidad obscura-transparente, pues bien ese efecto lo simularemos en el presente artículo usando C#.

 

LOS PASOS A SEGUIR

Paso 1

Antes de sentarnos a programar examinemos que es lo que vamos a realizar. En la imagen que se muestra a continuación mostramos el efecto que simularemos.

Efecto ventana Vista 

Como podemos darnos cuenta hay dos formularios, el primer formulario es el que esta de fondo y se lo ve medio obscuro y el segundo formulario esta con los colores normales. Pongamos atención y fijemonos que en la barra de tareas también la cubre el fondo obscuro pues bien este efecto es el que simularemos.

Paso 2

Como lograr este efecto. Pues es algo muy simple, para obtener el efecto usaremos un formulario que tenga las siguientes características como que su opacidad sea de 75%, su color de fondo sea negro y su tamaño sea igual al del área física de la pantalla de la computadora del usuario.

Paso 3

Examinemos el código fuente. Comencemos por el código del formulario principal.

private void button1_Click(object sender, EventArgs e)
{
    Form1 formulario = new Form1();
    frmIntermedio intermedio = new frmIntermedio(); 
    intermedio.Show();            
    formulario.Activate();
    formulario.ShowDialog();
    intermedio.Close();
    this.Activate();
}

El formulario llamado "frmIntermedio" es el formulario que nos ayudara a hacer el efecto, por otro lado el formulario "Form1" es el formulario al que llamaremos.

Démosle una mirada al código del formulario "frmIntermedio" el cual nos genera el efecto.

namespace Pantalla_Intermedia
{
    public partial class frmIntermedio : Form
    {
        public frmIntermedio()
        {
            InitializeComponent();            
            this.Size = Screen.PrimaryScreen.Bounds.Size;
            this.Opacity = 0.75;
            this.BackColor = Color.Black;
        }
    }
}

Para poder darle a este formulario el tamaño del área física de la pantalla del computador usaremos  "Screen.PrimaryScreen.Bounds.Size" el cual nos retornara un tipo de dato Size.

 


Espacios de nombres usados en el código de este artículo:

System
System.Collections.Generic
System.ComponentModel
System.Data
System.Drawing
System.Text
System.Windows.Forms

 


Código de ejemplo (comprimido):

 

Fichero con el código de ejemplo: panthom2k_Pantalla_Intermedia.zip - 22 KB

(MD5 checksum: 62A1352BCEEDD61874FE4D5B03EB79A2)

 


Ir al índice principal de el Guille