Здравствуйте.
Стоит галка "Запоминать положение" и выбран вариант "По заданным координатам"
Описание галки в редакторе: "Сохранить положение окна после перемещения". При снятой - следует ожидать, что положение открываемого окна определяется "Положением окна при первом открытии".
Тесты не подтвердили это утверждение, в некоторых оно работало, в некоторых - нет. Так что с галкой полный туман.
Вариант "По заданным координатам" правильный - положение окна при первом открытии определяется парой свойств окна (.X, .Y). Далее подразумевается что все окна "По заданным координатам".
... то когда пользователь заходит на страницу, то он единовременно прописывает координаты для окна. После закрытия окна, оно обращается за координатами к той прописи, которая была в самом начале, ...
Только для окон с изменяемым начальным положением, прописывать координаты для окон с фиксированным положением нет необходимости.
При закрытии окна функция SetPosAll(Xокна,Yокна) перемещает окно к начальному положению (делает то, что ожидалось от снятой галки "Запоминать положение").
... но согласитесь, что пользователю не нужно переходить между страницами, чтобы вернуть открываемые окна в то положение, в котором они должны быть ...
Так это и не требуется, т.к. закрытие окна по любой причине (прямое закрытие окна или из скрипта) перемещает окно в начальное положение. А поскольку окна не привязаны к страницам, то следует ожидать что переход на любую страницу устанавливает все окна в начальные положения.
Записал гифку с моими действиями...
Пример управления окнами по Вашим действиям во вложении - проект "Начальные_Положения_Окон". Проект содержит два "лишних" скрипта из-за особенностей текущей реализации возвращаемых значений функции SetPos.
Теперь о проблеме позиционирования окон, как она выглядит со стороны пользователя.
Предположительно, функция SetPos возвращает результат через указатель, инициализируемый при первой, после перехода на страницу, визуализации окна.
Порядок инициализации должен соответствовать порядку окон в списке команды "Открыть окно".
Предположение можно проверить в проекте "Test_SetPos". Тест основан на синхронных перемещениях окна и обрамляющего его прямоугольника. Для перемещения необходимо изменить любую координату.
В ручном режиме можно проверить:
- неактивированные окна не перемещаются;
- активировать окна в любом порядке, синхронные перемещения возможны только при правильном порядке активации окон.
В автоматическом можно запустить тест без ошибок или с ошибкой. Тесты отличаются только порядком активации окон.