Скачать MetaTrader 5

Два Playsound - страница 4

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
zoritch
4326
zoritch  
вообще мысль интересная... может от грамотного аудио и к визуализации придем... а там 3D и т.д.
Dm
107
Dm  
этой проблеме уже x-лет. я отключаю в настройках штатный звук на алерт, а то, что играть на событие определяю через if, как писали выше. вообще всегда удивляло, почему в ф-ии Alert() нельзя отключить штатный звук и использовать свой. как обычно приходится делать через одно место.
Vasyl Nosal
18839
Vasyl Nosal  
а можно хотябы сделать чтобы если стоит сначало Алерт а потом саунд, то играло последнее?
Карпутов Владимир
203
Карпутов Владимир  
eevviill:
а можно хотябы сделать чтобы если стоит сначало Алерт а потом саунд, то играло последнее?
Конечно можно, только нужно первым вызвать PlaySound().
Vasyl Nosal
18839
Vasyl Nosal  

Может кто знает попроще конструкцию для алерта и звука?

extern string al_set = "Alerts settings";
extern bool use_alert = false;
extern string up_alert = "UP";
extern string down_alert = "DOWN";
extern bool use_sound = false;
extern string up_sound = "nigniy alert karol";
extern string down_sound = "nigniy alert karol";
bool al_pl=false;
bool so_pl=false;
datetime al_time;
//int OnCalculate(const int rates_total,const int prev_calculated,const datetime &time[],const double &open[],const double &high[],
                //const double &low[],const double &close[],const long &tick_volume[],const long &volume[],const int &spread[]){...
if ((!use_sound || !use_alert || (use_alert && use_sound && al_pl && so_pl) || (use_alert && use_sound && !al_pl)) && Time[0] == prevtime) {al_pl=false;so_pl=false;return(rates_total)}
   prevtime = Time[0];

//Alerts
if(use_alert)
{  
if(up[1]!=EMPTY_VALUE && !al_pl) {al_time=TimeCurrent();al_pl=true;Alert(Symbol()," ",Period()," ",up_alert);}
if(down[1]!=EMPTY_VALUE && !al_pl) {al_time=TimeCurrent();al_pl=true;Alert(Symbol()," ",Period()," ",down_alert);}
}
if(use_sound)
{  
if(up[1]!=EMPTY_VALUE && !so_pl && TimeCurrent()>=al_time+1) {so_pl=true;PlaySound(up_sound);}
if(down[1]!=EMPTY_VALUE && !so_pl && TimeCurrent()>=al_time+1) {so_pl=true;PlaySound(down_sound);}
Vasyl Nosal
18839
Vasyl Nosal  
barabashkakvn:
Конечно можно, только нужно первым вызвать PlaySound().
Ха ха. Очень смешно.
Slava
Модератор
6924
Slava  
Omm:
этой проблеме уже x-лет. я отключаю в настройках штатный звук на алерт, а то, что играть на событие определяю через if, как писали выше.вообще всегда удивляло, почему в ф-ии Alert() нельзя отключить штатный звук и использовать свой. как обычно приходитсяделать через одно место.

Как нельзя поставить свой звук?

Сервис - Настройки - События - двойной клик на alert.wav - Выбрать choose other - Вы даже экзешник можете там выбрать (поэтому мы и не даём программно менять звуки событий)

Dm
107
Dm  
stringo:

Как нельзя поставить свой звук?

Сервис - Настройки - События - двойной клик на alert.wav - Выбрать choose other - Вы даже экзешник можете там выбрать (поэтому мы и не даём программно менять звуки событий)


у меня свой звуковой алерт на каждый символ.

мне не надо смотреть на график, я и так слышу, пробили хай на евро или фунте.

если поменять в настройках, то будет везде один и тот же звук. поэтому только совсем отключать звук на алерт в настройках и использовать PlaySound.

1234
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий