PDA

View Full Version : مبتدی: مشکل کدنویسی برای Alarm Clock



partovinia
دوشنبه 20 بهمن 1393, 20:51 عصر
سلام من یه برنامه ابتدایی نوشتم که timer هر وقت به زمان تعیین شده وذخیره شده در سه متغیر h,m,s رسید یه فایل صوتی رو پخش کنه , ولی نمی کنه!!! مطمئنم برنامه رو اشتباه نوشتم .راهنماییم کنید لطفا...

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//
timer1.Start();
}

private void Form1_Load(object sender, EventArgs e)
{
lblNowTime.ForeColor = Color.DarkRed;
//
timer1.Tick += new EventHandler(timer1_Tick);
//
DateTime dt = DateTime.Now;
if (FrmAlarm. h == dt.Hour && FrmAlarm . m == dt.Minute && FrmAlarm. s == dt.Second)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"C:\a.wav");
player.Play();
}
}

void timer1_Tick(object sender, EventArgs e)
{
DateTime dt = DateTime.Now;
lblNowTime.Text =dt.Hour.ToString("00 :") +dt.Minute.ToString("00 :") + dt.Second.ToString("00 ");
}

private void BtnAlarm_Click(object sender, EventArgs e)
{
FrmAlarm falarm = new FrmAlarm();
falarm.ShowDialog();

}


public partial class FrmAlarm : Form
{
static public int h, m, s;
DateTime dt = DateTime.Now;
public FrmAlarm()
{
InitializeComponent();
txtHour.Focus();
}

private void textBox2_TextChanged(object sender, EventArgs e)
{

}

private void FrmAlarm_Load(object sender, EventArgs e)
{
txtHour.Focus();
txtHour.Text = dt.Hour.ToString("00");
txtMinute.Text = dt.Minute.ToString("00");
txtSecond.Text = dt.Second.ToString("00");
//
if (h == dt.Hour && m == dt.Minute && s == dt.Second)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"C:\a.wav");
player.Play();
}
}

private void BtnSave_Click(object sender, EventArgs e)
{
h = Convert.ToInt32(txtHour.Text);
m = Convert.ToInt32(txtMinute.Text);
s = Convert.ToInt32(txtSecond.Text);
}

plus
دوشنبه 20 بهمن 1393, 23:02 عصر
شرط بررسی زمان رو در timer بگذارین تا مدام چک بشه. منظورم این قسمت هست:

DateTime dt = DateTime.Now;
if (FrmAlarm. h == dt.Hour && FrmAlarm . m == dt.Minute && FrmAlarm. s == dt.Second)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"C:\a.wav");
player.Play();
}

از Enable بودن timer هم مطمئن بشید.