Воспроизведение аудио + вопросы по Messagebox

Тема в разделе ".NET", создана пользователем MadYd, 14 май 2008.

Статус темы:
Закрыта.
  1. MadYd

    MadYd Гость

    Ситуация такая... Таймер, который отвечает за построение бегущего графика текущей температуры, также должен осуществлять проверку значений, по которым строится сам график.

    private void timer3_Tick(object sender, EventArgs e)
    {

    //-------------------------------------------------------------

    y2=p();

    // --------------------------------------------------------------

    j=Tverh();

    h=Tniz();

    //Дальше должна идти проверка

    }

    Переменные j и h получают значения, ограничивающие значение y2, и в случае, если y2 будет выходить за пределы, то должно выскакивать какое-нибудь сообщение и играть какая-нибудь сирена! Но поскольку таймер выполняет одно и тоже, то новый MEssageBox после проверки выскакивает каждую секунду! Я не знаю как сделать так, чтобы вылетело ТОЛЬКО ОДНО сообщение, а не бесконечное множество, но при этом Таймер продолжил бы стороить график. А так же у меня вопрос- как можно воспроизвести звуковой файл(тут не нужно ничего мудреного, просто может одна какая-нибудь команда есть, допустим специально для waw)?
     
  2. pushkin

    pushkin Гость

    По поводу отображения единственного MessageBox'a можно где-нибудь в программе запомнить время последнего отображения (DateTime lastDisplay = DateTime.Now), а потом смотреть, прошло ли достаточно времени для того, чтобы его показать еще раз: if (DateTime.Now.Substruct(lastDisplay).ToMinutes > 1) {MessageBox.Show(...);}.

    По поводу воспроизведения аудио - результат первого запроса в Google вывел мне примерно следующее:
    Код (Text):
     [DllImport("WinMM.dll")]
    public static extern bool PlaySound(byte[]wfname, int fuSound);

    public void Play(string wfname,int SoundFlags)
    {
    byte[] bname = new Byte[256];   //Max path length
    bname = System.Text.Encoding.ASCII.GetBytes(wfname);
    PlaySound(bname,SoundFlags);
    }
    Адрес статьи тут: http://www.codeguru.com/csharp/csharp/cs_g...icle.php/c6143/
     
  3. Young Programmer

    Young Programmer Гость

    Для отображения бокса 1 раз я бы завел логическую переменную, а затем проверка при выводе бокса

    Код (Text):
    bool warningShown=false;
    ...........................
    if (!warningShown)
    {
    MessageBox.Show("Error");
    warningShown=true;
    }
    ...............................
    что-то типа этого
     
Загрузка...
Похожие Темы - Воспроизведение аудио вопросы
  1. lazybiz
    Ответов:
    5
    Просмотров:
    2.391
Статус темы:
Закрыта.

Поделиться этой страницей