[ Foro de C# ]
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void salirToolStripMenuItem_Click(object sender, EventArgs e)
{
if (MessageBox.Show("¿Desea salir del programa?", "Menu Principal", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning) == DialogResult.Yes)
{
Application.Exit();
}
}
private void areaDelTrianguloToolStripMenuItem_Click(object sender, EventArgs e)
{
frmTriangulo frmt = new frmTriangulo();
frmt.MdiParent = this;
if (sender == areaDelTrianguloToolStripMenuItem)
{
timer2.Enabled = true;
if (timer2.Enabled == false)
{
frmt.Show();
}
}
}
private void areaDelCirculoToolStripMenuItem_Click(object sender, EventArgs e)
{
frmCirculo frmc = new frmCirculo();
frmc.MdiParent = this;
frmc.Show();
}
private void acomodarHorizontalmenteToolStripMenuItem_Click(object sender, EventArgs e)
{
this.LayoutMdi(MdiLayout.TileHorizontal);
}
private void acomodarVerticalmenteToolStripMenuItem_Click(object sender, EventArgs e)
{
this.LayoutMdi(MdiLayout.TileVertical);
}
private void acomodarEnCascadaToolStripMenuItem_Click(object sender, EventArgs e)
{
this.LayoutMdi(MdiLayout.Cascade);
}
private void acomodarEnIconoToolStripMenuItem_Click(object sender, EventArgs e)
{
this.LayoutMdi(MdiLayout.ArrangeIcons);
}
private void toolStripStatusLabel1_Click(object sender, EventArgs e)
{
}
private void timer1_Tick(object sender, EventArgs e)
{
toolStripStatusLabel1.Text = DateTime.Now.ToLongTimeString().ToString();
toolStripStatusLabel2.Text = DateTime.Now.ToLongDateString().ToString();
}
public void timer2_Tick(object sender, EventArgs e)
{
toolStripProgressBar1.Increment(1);
toolStripStatusLabel7.Text = "Espere un momento....";
toolStripProgressBar1.Visible = true;
if (toolStripProgressBar1.Value == toolStripProgressBar1.Maximum)
{
toolStripProgressBar1.Visible = false;
timer2.Enabled = false;
toolStripStatusLabel7.Text = "";
}
}
}
}
Quiero aclarar que mi intension es que el timer.Enabled==false me muestre el formulario que deseo
No acabo de entender la pregunta. ¿Quieres que se muestre un segundo formulario cuando un temporizador alcance cierto valor?
Si, esa seria mi intension.
Un temporizador se activa cada cierto tiempo, que tú indiques en su propiedad "Interval", en milisegundos. Así, "2000" querría decir que ocurriera al cabo de dos segundos.
Si tu temporizador se llama "timer1", lo activarías con "timer1.Start();" (puede ser a partir de que se cumpla cierta condición, o bien en el constructor del formulario, si quieres que sea a partir de que se lance el programa). El "Start()" es lo mismo que hacer "timer1.Enabled = true;".
Entonces, en el evento "Tick" detallarías lo que quieres que ocurra cuando pase ese tiempo. Por ejemplo, si quieres que se muestre una ventana de aviso, sería:
private void timer1_Tick(object sender, EventArgs e)
{
MessageBox.Show("Hola");
}
Si quieres parar el temporizador, para que sólo ocurra una vez, basta con que añadas "timer.Stop();":
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Stop();
MessageBox.Show("Hola");
}
Si se trata de mostrar un segundo formulario, es muy parecido:
private void timer1_Tick(object sender, EventArgs e)
{
timer1.Stop();
Form2 ventana = new Form2();
ventana.ShowDialog();
}
Muchas gracias por resolver mi duda, te lo agradezco.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)