Активность окна без WinApi

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

Друзья. 

Скажите, кто-нибудь нашел способ определить, что окно активно? что оно в фокусе? без WinApi?

Vladislav Andruschenko
164475
Vladislav Andruschenko  

спасибо нашел свойство

CHART_BRING_TO_TOP

Показ графика поверх всех других

Ihor Herasko
21189
Ihor Herasko  
Vladislav Andruschenko:

спасибо нашел свойство

CHART_BRING_TO_TOP

Показ графика поверх всех других

Это свойство не для чтения, а для записи. То есть позволяет вывести окно поверх остальных. Заявленная же проблема (определение того, что окно поверх других), без WinAPI не решается, если программа прикреплена только к одному окну. 

Vladislav Andruschenko
164475
Vladislav Andruschenko  
Ihor Herasko:

Это свойство не для чтения, а для записи. То есть позволяет вывести окно поверх остальных. Заявленная же проблема (определение того, что окно поверх других), без WinAPI не решается, если программа прикреплена только к одному окну. 


я попробовал.

у меня работает и на чтение. 


в данном случае мне надо было знать, 

какое из двух графиков в фокусе. 

Ihor Herasko
21189
Ihor Herasko  
Vladislav Andruschenko:


я попробовал.

у меня работает и на чтение. 


в данном случае мне надо было знать, 

какое из двух графиков в фокусе. 

Да, действительно, работает. Верь вот так документации ))

Проверил таким кодом:

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[])
{
   long lChartID = ChartFirst();
   
   while (lChartID > 0)
   {
      if (ChartGetInteger(lChartID, CHART_BRING_TO_TOP))
         break;
         
      lChartID = ChartNext(lChartID);
   }

   Print(__FUNCTION__, ", current top chart: ", ChartSymbol(lChartID), ", ", EnumToString(ENUM_TIMEFRAMES(ChartPeriod(lChartID))));
   return(rates_total);
}

Где Вы раньше были с этим вопросом? ))) Я бы не городил огород в некоторых своих индикаторах.

Vladislav Andruschenko
164475
Vladislav Andruschenko  
Ihor Herasko:

Да, действительно, работает. Верь вот так документации ))

Проверил таким кодом:

Где Вы раньше были с этим вопросом? ))) Я бы не городил огород в некоторых своих индикаторах.


Аналогично. Я тоже раньше использовал эту функцию, но за неработоспособностью удалил и забыл. 

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