【发布时间】:2016-12-28 07:48:37
【问题描述】:
我为基本的 Windows 窗体应用程序编写了一些代码。但是出了点问题。我正在启动应用程序,一切正常,但如果我启动计时器,它会第一次运行并且不会重复。我该怎么办?
抱歉语法错误。
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.Timers;
using System.Windows.Forms;
namespace Zamanlayıcı
{
public partial class Form1 : Form
{
public int saat;
public int dakika;
public int saniye;
public int zaman;
public Form1()
{
InitializeComponent();
}
private void baslat_button_Click(object sender, EventArgs e)
{
timer1.Interval = 1000;
timer1.Start();
}
private void durdur_button_Click(object sender, EventArgs e)
{
timer1.Stop();
}
private void demizle_button_Click(object sender, EventArgs e)
{
saat_box.Clear();
dakika_box.Clear();
saniye_box.Clear();
zaman_text.Text = "00:00:00";
}
private void ses_checkbox_CheckedChanged(object sender, EventArgs e)
{
}
private void timer1_Tick_1(object sender, EventArgs e)
{
int saat = int.Parse(saat_box.Text);
int dakika = int.Parse(dakika_box.Text);
int saniye = int.Parse(saniye_box.Text);
int zaman = saat * 60 * 60 + dakika * 60 + saniye;
int saat2 = zaman / 60 / 60;
int dakika2 = zaman / 60 % 60;
int saniye2 = zaman % 60;
if(zaman > 0) {
zaman--;
zaman_text.Text = saat2.ToString("00") + ":" + dakika2.ToString("00") + ":" + saniye2.ToString("00");
}if(zaman == 0)
{
MessageBox.Show("Zaman doldu!", "Bitti", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
}
}
}
【问题讨论】:
-
检查以确保tick事件绑定到timer1_Tick_1
-
当我按下开始按钮时,它会设置文本,但不会重复,所以我确定它一定会纠正事件
-
当时的文字是什么..你在tick事件中设置了断点吗?
-
在 durdur_button_Click() 中注释掉 timer1.Stop() 以确保它也不会被触发..
-
在“timer1_Tick_1”过程的开头插入“timer1.enabled=false”,最后插入“”timer1.enabled=true”。但是,这些缺失的说明并不能解释您的问题。
标签: c#