140 lines
3.8 KiB
C#
140 lines
3.8 KiB
C#
using CAB.Properties;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
|
|
namespace CAB
|
|
{
|
|
public partial class Form_Alert : Form
|
|
{
|
|
public Form_Alert()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
public enum enmAction
|
|
{
|
|
wait,
|
|
start,
|
|
close
|
|
}
|
|
|
|
public enum enmType
|
|
{
|
|
Success,
|
|
Warning,
|
|
Error,
|
|
Info
|
|
}
|
|
private Form_Alert.enmAction action;
|
|
|
|
private int x, y;
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
|
|
}
|
|
|
|
private void timer1_Tick(object sender, EventArgs e)
|
|
{
|
|
switch(this.action)
|
|
{
|
|
case enmAction.wait:
|
|
timer1.Interval = 5000;
|
|
action = enmAction.close;
|
|
break;
|
|
case Form_Alert.enmAction.start:
|
|
this.timer1.Interval = 1;
|
|
this.Opacity += 0.1;
|
|
if (this.x < this.Location.X)
|
|
{
|
|
this.Left--;
|
|
}
|
|
else
|
|
{
|
|
if (this.Opacity == 1.0)
|
|
{
|
|
action = Form_Alert.enmAction.wait;
|
|
}
|
|
}
|
|
break;
|
|
case enmAction.close:
|
|
timer1.Interval = 1;
|
|
this.Opacity -= 0.1;
|
|
|
|
this.Left -= 3;
|
|
if (base.Opacity == 0.0)
|
|
{
|
|
base.Close();
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
private void pictureBox2_Click(object sender, EventArgs e)
|
|
{
|
|
timer1.Interval = 1;
|
|
action = enmAction.close;
|
|
}
|
|
|
|
public void showAlert(string msg, enmType type)
|
|
{
|
|
this.Opacity = 0.0;
|
|
this.StartPosition = FormStartPosition.Manual;
|
|
string fname;
|
|
|
|
for (int i = 1; i < 10; i++)
|
|
{
|
|
fname = "alert" + i.ToString();
|
|
Form_Alert frm = (Form_Alert)Application.OpenForms[fname];
|
|
|
|
if (frm == null)
|
|
{
|
|
this.Name = fname;
|
|
this.x = Screen.PrimaryScreen.WorkingArea.Width - this.Width + 15;
|
|
this.y = Screen.PrimaryScreen.WorkingArea.Height - this.Height * i - 5 * i;
|
|
this.Location = new Point(this.x, this.y);
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
this.x = Screen.PrimaryScreen.WorkingArea.Width - base.Width - 5;
|
|
|
|
switch(type)
|
|
{
|
|
case enmType.Success:
|
|
this.pictureBox1.Image = Resources.success;
|
|
this.BackColor = Color.SeaGreen;
|
|
break;
|
|
case enmType.Error:
|
|
this.pictureBox1.Image = Resources.error;
|
|
this.BackColor = Color.DarkRed;
|
|
break;
|
|
case enmType.Info:
|
|
this.pictureBox1.Image = Resources.info;
|
|
this.BackColor = Color.RoyalBlue;
|
|
break;
|
|
case enmType.Warning:
|
|
this.pictureBox1.Image = Resources.warning;
|
|
this.BackColor = Color.DarkOrange;
|
|
break;
|
|
}
|
|
|
|
|
|
this.lblMsg.Text = msg;
|
|
|
|
this.Show();
|
|
this.action = enmAction.start;
|
|
this.timer1.Interval = 1;
|
|
this.timer1.Start();
|
|
}
|
|
}
|
|
}
|