Асинхронное и многопоточное программирование в MQL - страница 38

 
Andrey Barinov:

Хоть миллион ячеек. Если видно из них 1000 максимум на экране, зачем все обновлять / рисовать?

Это был стресс-тест возможностей моих таблиц. (Мониторы у всех разные).

 
Реter Konow:
Это был стресс-тест возможностей моих таблиц.

Это не снимает вопрос. Если ячейки не видно на экране, их не нужно трогать / обсчитывать / рисовать. Это же относится к другим объектам графики.

 
Andrey Barinov:

Это не снимает вопрос. Если ячейки не видно на экране, их не нужно трогать / обсчитывать / рисовать. Это же относится к другим объектам графики.

Стресс-тест. Нужно было проверить скорость перерисовки при таких размерах видимой области.
 
Реter Konow:
Стресс-тест.

Я все равно не понимаю смысл. Есть канвас. Его размер ограничен размером монитора (в пикселях). Какая разница что на нем происходит? Рисовать то нужно неизменное количество пикселей. А там хоть кино показывай, хоть таблицы рисуй.

 
Andrey Barinov:

Я все равно не понимаю смысл. Есть канвас. Его размер ограничен размером монитора (в пикселях). Какая разница что на нем происходит? Рисовать то нужно неизменное количество пикселей. А там хоть кино показывай, хоть таблицы рисуй.

Хорошо. Поясню. Например, эта таблица помещена в ограниченное поле обзора меньше чем размер графика. Все значения в таблице меняются с частотой 100 мс. Допустим, перерисовываем только видимую область канваса. И вдруг пользователь начинает прокручивать канвас. В этом случае, неперерисованные ячейки будут показывать старые, неизменные значения. Их что, перерисовывать в процессе прокрутки? Тогда прокрутка будет сильно тормозить.
 
Реter Konow:

 А статью про подключение шарповских таблиц я жду уже давно. (Только моего уровня легкости подключения Вам не добиться, поверьте на слово. :))

"опять - двадцать пять!", Вы просто не представляете возможностей компиляторов от Майкрософт, огромного громаднейшего количества  готовых пакетов (библиотек) написанных на С++ или C# и опять утверждаете о сложностях...

вот показывал, как  "в 2 клика" "выбросить" в отдельный поток форму C# на WinForms https://www.mql5.com/ru/forum/303283#comment_10600035 

о какой сложности идет речь?

ладно, глупостью занимаюсь, доказываю, что круглое это не квадратное, не забудьте в качесве аргумента опять сказ про распространение через Макркет повествовать, у Вас, кстати, прорыв! - Вы уже в КБ! осталось дело за малым - следующий Маркет? ;)


Andrey Barinov:

Это не снимает вопрос. Если ячейки не видно на экране, их не нужно трогать / обсчитывать / рисовать. Это же относится к другим объектам графики.

к сожалению у него свой подход к графике, есть одноименный топик у Петра, вот в КБ даже с исходниками он выкладывал не давно свою таблицу, если интересно попробуйте логику автора понять, я не занимался, глянул выборочно, понял, что все что смогу оценить это вес исходников, если не изменяет мне память - 3 Мб текста ;)

 
Igor Makanu:

"опять - двадцать пять!", Вы просто не представляете возможностей компиляторов от Майкрософт, огромного громаднейшего количества  готовых пакетов (библиотек) написанных на С++ или C# и опять утверждаете о сложностях...

вот показывал, как  "в 2 клика" "выбросить" в отдельный поток форму C# на WinForms https://www.mql5.com/ru/forum/303283#comment_10600035 

о какой сложности идет речь?

ладно, глупостью занимаюсь, доказываю, что круглое это не квадратное, не забудьте в качесва аргумента опять сказ про распространение через Макркет повествовать, у Вас, кстати, прорыв! - Вы уже в КБ! осталось дело за малым - следующий Маркет? ;)

...

1. Представляю, именно поэтому разрабатываю на MQL. Там делать нечего уже. Опоздал я. Нужно новое строить. Для меня  из глобальных областей только ИИ остается. Но, это позже будет.

2. Вы не понимаете конкретику вопроса подключения к внешнему GUI. В вопросе эффективности и легкости подключения не имеют значения возможности шарпа, а имеет значение легкость их использования в другой среде разработки. В другом приложении. В другом языке. Родное подключение по определению лучше, если оно выполнено на совесть.

 
Реter Konow:

Родное подключение по определению лучше, если оно выполнено на совесть. 

лучше чего? - конкретные значения, цифры? 

единственный смысл это продажи в Маркете, Вам уже писали и я писал из опыта написания на форумах (на сотню написанных кодов  всего 3 работы по графике и то я сам подтолкнул заказчиков - мне было интересно возможности СБ MQL посмотреть)

давайте так, как всего 100 продаж своего продукта достигните, тогда и будут цифры и узнаем, что за слово такое: ЛУЧШЕ

;)

 
Реter Konow:
Хорошо. Поясню. Например, эта таблица помещена в ограниченное поле обзора меньше чем размер графика. Все значения в таблице меняются с частотой 100 мс. Допустим, перерисовываем только видимую область канваса. И вдруг пользователь начинает прокручивать канвас. В этом случае, неперерисованные ячейки будут показывать старые, неизменные значения. Их что, перерисовывать в процессе прокрутки? Тогда прокрутка будет сильно тормозить.

При количестве рядов в 1000 штук, их никто не будет прокручивать. Нужно предлагать другие решения этой задачи. Необходимо делать фильтры и поиск и т.д, тогда будут показываться только нужные ряды.

Это, конечно, если делать ГУИ для людей, а не ради ГУИ.

Что можно глазами найти в таблице из 1000 рядов с помощью прокрутки? Какая задача решается?

P.S. Опять оффтопик пошел... 

 
Andrey Barinov:

Что можно глазами найти в таблице из 1000 рядов с помощью прокрутки?

Если есть условное форматирование и сортировка, можно находить области минимальных/максимальных значений по нескольким параметрам сразу.

Оффтоп, конечно. Петр не теряет сноровки в цеплянии за живое )

Причина обращения: