Помагите подправить функцию отображения информации.

 

Задачка такая. Необходимо отображение информации советника в несколько строчек. Проблема вот в чем, когда в функцию передается информация в строчку 1 то из строчки 2 все исчезает, и наоборот. Что не так?

string iTemp1, iTemp2;
void Comments(int iNomer, string iText){
if(iNomer==1){
   iTemp1 = iText;
iTemp2 = iTemp2;
   }
if(iNomer==2){
iTemp2 = iText;
   iTemp1 = iTemp1;
   }
   Comment(iTemp1, "\n", iTemp2);
}
 
T-G >>:

Задачка такая. Необходимо отображение информации советника в несколько строчек. Проблема вот в чем, когда в функцию передается информация в строчку 1 то из строчки 2 все исчезает, и наоборот. Что не так?

позвольте поинтересоваться, что должна по вашему мнению делать ваша функция, иначе разобраться что не так проблематично.

 
alsu >>:

позвольте поинтересоваться, что должна по вашему мнению делать ваша функция, иначе разобраться что не так проблематично.

хочу что бы на чарте отображалась информация в несколько строчек:


строчка1: 18:01 - открытие ордера - прошло успешно

строчка2: 19:05 - закрытие ордера


Comments(1, "20:15 - ошибка открытия ордера")

по идеи функция должна менять только строчку1 а инфа в строчке2 должно оставаться пока ее не изменю (Comments(2,... ), но она исчезает

 

потестил, все вроде работает как надо, выводятся две строчки.

... проверяйте как передаются параметры в функцию, других предложений, увы, не имею.

 
да, и уберите из текста никчемные фразы типа x=x :)
 

Делаем так:

start(){

string cs="";

...

...

...

cs=cs+"сообщение 1"+"\n";

Comment(cs);

...

...

...

cs=cs+"сообщение 2"+"\n";

Comment(cs);

...

...

...

cs=cs+"сообщение 3"+"\n";

Comment(cs);

...

...

...

cs=cs+"сообщение 4"+"\n";

Comment(cs);

 

Принцип такой - в модуле объявлена глобальная переменная cs. В начале выполнения фнкции старт очищаем ее. Затем в любом месте кода добавляем к ней сообщение и сразу выводим.

 
alsu >>:
да, и уберите из текста никчемные фразы типа x=x :)
alsu >>:

потестил, все вроде работает как надо, выводятся две строчки.

... проверяйте как передаются параметры в функцию, других предложений, увы, не имею.

А у меня выводит по очереди, если строчка1 покатываться то строчка2 исчезает итак далее, параметры передаются вроде без ошибок.

"x=x" уберу - но думаю на логику функции это не влияет )))

 

Понятно, то есть передавать в функцию значение переменной а не текста в ковычках. Так... а как тогда передавать инфу в строчку1 что бы при этом в строчке строчку2 значение не менялось пока я его не изменю? И как я передам в строчку2 не трогая при этом строчку1 - блин сам запутался

Integer >>:

Делаем так:

start(){

string cs="";

...

...

...

cs=cs+"сообщение 1"+"\n";

Comment(cs);



 
Уберите строки iTemp2 = iTemp2; и iTemp1 = iTemp1; - они не нужны. string iTemp1, iTemp2; должны быть объявлены в общем разделе или статическими, у вас они в общем разделе, должно работать.
 
Добрый день всем!