Warum funktioniert der Nachrichtenindikator in Windows 7 nicht? - Seite 3

 
siehe meine persönliche E-Mail, die aber nur für diese Woche gilt
[Gelöscht]  

soll es so aussehen?

Dateien:
news_1.mq4  18 kb
[Gelöscht]  
Abzasc:

soll es so aussehen?


Nur sieht es so aus, als wären die Zeilenbeschriftungen in jedem Teilfenster dupliziert.
[Gelöscht]  
alexx_v:
Nur scheinen Sie die Zeilenbeschriftung in jedem Teilfenster dupliziert zu haben.

Dann ist es einfacher, ein separates Fenster für den Indikator zu öffnen :) Ich weiß nicht, wo ich das ändern muss, ich werde es morgen versuchen.

Ich denke auch wie Mischek. Die Datei heißt jetzt Calendar-08-01-2010.csv, so dass ich jede Woche eine neue Adresse hierher kopieren muss

und Änderung des Codes in diesem Teil

// -----------------------------------------------------------------------------------------------------------------------------
string LoadNews(datetime curr_time)
{ 
  bool reload = false;
  int pos = 0, pos1 = 0;
  int file = 0, file2 = 0;
  string str = "", str2 = "";
// ---------- название ФАЙЛА
  file = FileOpen("Calendar-08-01-2010.csv", FILE_BIN|FILE_READ);
  if(file!=-1)
  {
    FileClose(file); 
// ---------- название ФАЙЛА
    str2 = ReadFile("Calendar-08-01-2010.csv");
        
    pos = StringFind(str2, "\n");
    int cache_time = StrToTime(StringSubstr(str2, 0, pos));
    str2 = StringSubstr(str2, pos+2);

    if(cache_time<=curr_time-update*60) reload = true;
  }
  else reload = true;

  LastUpdate = curr_time;
  if(reload)
  {
// ---------- АДРЕС
    str = ReadWebPage("http://cdn.dailyfx.com/files/Calendar-08-01-2010.csv?week=&sort=dateDesc&timezone=&currency=|&importance=|&time="+curr_time);
    if(str == "") return(0);
    Str_Replace("\n\n", "\n", str);
    str = StringTrimRight(str);

// ---------- название ФАЙЛА
    WriteFile("Calendar-08-01-2010.csv", TimeToStr(curr_time, TIME_DATE|TIME_SECONDS)+"\n"+str);
  }  
  else
    str = StringTrimRight(str2);
  return (str);  
}

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

aktualisieren

An einer Stelle verfehlt, aber es hat funktioniert :)

Dateien:
news_2.mq4  18 kb
[Gelöscht]  

Nein, nein, nein...

// -----------------------------------------------------------------------------------------------------------------------------
string LoadNews(datetime curr_time)
{ 
  bool reload = false;
  int pos = 0, pos1 = 0;
  int file = 0, file2 = 0;
  string str = "", str2 = "";
// ---------- название ФАЙЛА
  file = FileOpen("news.csv", FILE_BIN|FILE_READ);
  if(file!=-1)
  {
    FileClose(file); 
// ---------- название ФАЙЛА
    str2 = ReadFile("news.csv");
        
    pos = StringFind(str2, "\n");
    int cache_time = StrToTime(StringSubstr(str2, 0, pos));
    str2 = StringSubstr(str2, pos+2);

    if(cache_time<=curr_time-update*60) reload = true;
  }
  else reload = true;

  LastUpdate = curr_time;
  if(reload)
  {
// ---------- АДРЕС
    str = ReadWebPage("http://cdn.dailyfx.com/files/Calendar-08-01-2010.csv?week=&sort=dateDesc&timezone=&currency=|&importance=|&time="+curr_time);
    if(str == "") return(0);
    Str_Replace("\n\n", "\n", str);
    str = StringTrimRight(str);
    WriteFile("news.csv", TimeToStr(curr_time, TIME_DATE|TIME_SECONDS)+"\n"+str);
  }  
  else
    str = StringTrimRight(str2);
  return (str);  
}

// -----------------------------------------------------------------------------------
Ich denke, das ist es, was wir tun sollten, sonst lesen wir die Daten und schreiben sie in news.csv, und dann versuchen, aus Calendar-08-01-2010.csv zu lesen, aber haben wir es irgendwo gespeichert?
[Gelöscht]  
Da ist es gut, dass ich es verpasst habe). Denn ich glaube nicht, dass es sich lohnt, das zu ändern, weil es jetzt einfacher wäre, eine "Krücke" zu machen - eine externe Variable, in die man das neue Datum zu Beginn der neuen Woche schreibt und von Hand in der Abfrageadresse ersetzt
[Gelöscht]  
alexx_v:

Nein, nein, nein...

Ich denke, das ist es, was wir tun sollten, sonst lesen wir die Daten und schreiben sie in news.csv, und versuchen dann, aus Calendar-08-01-2010.csv zu lesen, aber haben wir sie irgendwo gespeichert?
So funktioniert das nicht, so habe ich angefangen :)
[Gelöscht]  
alexx_v:
Da ist es gut, dass ich es verpasst habe). Denn ich glaube nicht, dass es sich lohnt, das zu ändern, weil es jetzt einfacher wäre, eine "Krücke" zu machen - eine externe Variable, in die man das neue Datum zu Beginn der neuen Woche schreibt und es von Hand in der Abfrageadresse ersetzt
Ja, das ist wahrscheinlich die einfachste Option.
[Gelöscht]  
Abzasc:
So funktioniert das nicht, damit habe ich angefangen :)
Hmm. news.csv zurückgegeben - neu gestartet - funktioniert... Wunderbar :)
[Gelöscht]  

los geht's:

extern string кастыль= "08-01-2010";

und die Abfrageadresse entsprechend:

str = ReadWebPage("http://cdn.dailyfx.com/files/Calendar-"+кастыль+".csv?week=&sort=dateDesc&timezone=&currency=|&importance=|&time="+curr_time);

scheint zu funktionieren, so lange wir damit auskommen können.

---

Jetzt werden alle Nachrichten für alle Währungen angezeigt, der alte Filter funktioniert nicht mehr.