|
AmiSite.ru
Форум по Ами |
Автор |
Сообщение |
il-ir
Зарегистрирован: 28.05.2013
Сообщения: 189
|
Здравствуйте.
Вопрос где-то тут уже обсуждался (мне так помнится), но найти не могу.
Задача такая. Надо по щелчку мышки в области графика записать в файл параметры свечи, в которую мышка указывает и значения индикаторов, если они отображаются на графике в этой свече.
В идеале ещё сделать возможность что-то добавлять руками в записываемый файл - доп. данные и/или комментарий какой-нибудь.
Как это сделать?
Заранее спасибо за ответ. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Если сделать просто по щелчку мыши, то при каждом щелчке будет писать.
И кроме того ловить координаты указателя на графике тоже то еще удовольствие.
Наверное лучше сделать не место щелчка, а выбранный бар.
Тогда все довольно просто.
Значения массивов получаем функцией SelectedValue().
Щелчек мыши ловим функцией GetCursorMouseButtons().
Там млжно задать разные варианты чтобы не срабатывало на каждый клик...
А писать лучше не в файл, а во встроенный notepad Amibroker. Использовать функцию NoteSet() |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
il-ir
Зарегистрирован: 28.05.2013
Сообщения: 189
|
Спасибо, Олег!
Буду пробовать. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
il-ir
Зарегистрирован: 28.05.2013
Сообщения: 189
|
Круть!
то, что надо.
То есть, мне надо было выносить разные параметры - типа вверх или вниз (то есть, записывать +1 или -1). В предложенном варианте всё это реализуется средняя-левая кнопки мышки.
Вот только не получается перехватить правую кнопку - почему-то всегда всплывает менюшка.
Как правую кнопку отработать - подскажи?
Вот то, что пока получилось:
Код: |
if( GetCursorMouseButtons() & 1 )
{
// printf("left mouse button is pressed down" );
printf("\nPar: 1" );
printf("\nOpen: " + selectedvalue(Open));
printf("\nHigh: " + selectedvalue(High));
printf("\nLow: " + selectedvalue(Low));
printf("\nClose: " + selectedvalue(Close));
printf("\nVolume: " + selectedvalue(Volume));
printf("\nDateTime: " + DateTimeToStr(selectedvalue(DateTime())));
}
if( GetCursorMouseButtons() & 4 )
{
// printf("middle mouse button is pressed down" );
printf("\nPar: -1" );
printf("\nOpen: " + selectedvalue(Open));
printf("\nHigh: " + selectedvalue(High));
printf("\nLow: " + selectedvalue(Low));
printf("\nClose: " + selectedvalue(Close));
printf("\nVolume: " + selectedvalue(Volume));
printf("\nDateTime: " + DateTimeToStr(selectedvalue(DateTime())));
} |
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
il-ir писал(а): |
Как правую кнопку отработать - подскажи?
|
Не знаю. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
|
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
| |