Jak odtwarzać dźwięk alarmu tylko raz
Pokaż wyniki od 1 do 4 z 4

Wątek: Jak odtwarzać dźwięk alarmu tylko raz

  1. #1
    Mam kilka wskaźników, w których strzałka zostaje namalowana na wykresie, gdy pojawiają się kryteria, które określam. Zamiast wpatrywać się w MT4 przez cały dzień, chciałbym, aby po naciśnięciu strzałki został wygenerowany alert, aby móc wykonywać inne prace na moim komputerze. ALE, chcę tylko, aby alert zagrał tylko raz! Jak mogę to zrobić?

    Podstawowy kod, którego użyłem w moich wskaźnikach do wyświetlenia ostrzeżenia, to:

    Wstawiony kod PlaySound (Alert.wav);

    Dzięki.

  2. #2

    Cytat Zamieszczone przez ;
    Mam kilka wskaźników, w których strzałka zostaje namalowana na wykresie, gdy pojawiają się kryteria, które określam. Zamiast wpatrywać się w MT4 przez cały dzień, chciałbym, aby po naciśnięciu strzałki został wygenerowany alert, aby móc wykonywać inne prace na moim komputerze. ALE, chcę tylko, aby alert zagrał tylko raz! Jak mogę to zrobić? Podstawowy kod, którego użyłem w moich wskaźnikach do wyświetlenia ostrzeżenia, to: PlaySound (Alert.wav); Dzięki.
    domyślne Alert.wav jest zbyt krótki czas i często brakowało. użyj pliku muzycznego WAV o kilku sekundach, na przykład 30 sekund./odtwarzanie muzyki plik wav extern bool PlaySounds = true;/...fałszywy;/plik wave do odtworzenia zewnętrznego ciągu AlertSound = music.wav; if (PlaySounds) PlaySound (AlertSound); *** Utwórz plik WAV z ulubionego utworu muzycznego i nadaj mu nazwę music.wav

  3. #3

    Cytat Zamieszczone przez ;
    {quote} domyślne Alert.wav jest zbyt krótki czas i często brakowało. użyj pliku muzycznego WAV o kilku sekundach, na przykład 30 sekund./odtwarzanie muzyki plik wav extern bool PlaySounds = true;/...fałszywy;/plik wave do odtworzenia zewnętrznego ciągu AlertSound = music.wav; if (PlaySounds) PlaySound (AlertSound); *** Utwórz plik WAV z ulubionego utworu muzycznego i nadaj mu nazwę music.wav
    Dzięki, ale moje pytanie dotyczy raczej tego, jak przerwać wielokrotne odtwarzanie ostrzeżenia.

  4. #4
    Zależy to od sposobu uruchomienia alertu, ale kilka typowych sposobów rozwiązania tego problemu to: 1. Sprawdź, czy nastąpiła zmiana stanu. Użyj zmiennej statycznej, aby zapamiętać, czy poprzednie uruchomienie za pomocą OnCalculate ()OnTimer () spowodowało alert. Jeśli tak, nie alarmuj ponownie. Jeśli nie, a tym razem spowodował alert, a następnie odtwarzać dźwięk. Wstawiony kod statycznego bool OldState = false; bool NewState = (Zamknij # 91; 1 # 93; gt; Zamknij # 91; 2 # 93;/zmień logikę, jeśli (! OldState NewState) {PlaySound (Alert.wav); } OldState = NewState; 2. Dodaj opóźnienie między alertami Pamiętaj, kiedy ostrzeżenie jest ostatnio wyzwalane, dodaj do tego opóźnienie czasowe (w sekundach), a następnie sprawdź, czy funkcja TimeCurrent () jest większa niż ta, zanim ponownie uruchomisz alert. Wstawiony kod static datetime LastAlert = 0; if (Close # 91; 1 # 93; gt; Zamknij # 91; 2 # 93; TimeCurrent () gt; LastAlert 300)/Zmień dla swojej logiki {PlaySound (Alert.wav); LastAlert = TimeCurrent (); } Lub możesz użyć ich kombinacji (gdy cena zbliża się do progu twojego alertu). Lub po prostu sprawdź raz na pasek. Nadzieja, która pomaga

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Używamy cookies
Używamy cookies, aby jak najlepiej dostosować witrynę do Twoich potrzeb. Kontynuowanie przeglądania tej strony, oznacza zgodę na używanie plików cookies. Aby uzyskać więcej informacji zapoznaj się z naszą Polityką Prywatności.