Сарказм не засчитан.
А никакого сарказма! Я серьёзно.
У нас двухмониторные конфигурации, но рабочие столы разделяем на отдельные, а не клеим их.
И чего? Разве поведение программы должно зависеть от конфигурации устройств вывода? ИМХО, программы должны учитывать ВСЕ возможные конфигурации и, в том числе, количество и расположение мониторов и рабочих столов. Разве нет?
Проблема-то не в этом, а в том, что программа не читает параметры из ini-файла или читает, но неверно обрабатывает. Что вам стоит под дебаггером-то посмотреть, что происходит? Делов-то на 5 минут - и одним багом меньше.
Про нормальные отрицательные координаты рабочего стола слышу впервые, никогда не сталкивался. Обычно, если координата по вертикали либо горизонтали меньше нуля, значит, левый верхний угол за границей экрана.
Век живи - век учись. Кстати, значения координат вас не должны волновать, ибо система сама корректно расположит окно при вызове CreateWindowEx()/SetWindowPos(), главное - передать ей правильные координаты через методы TForm.
Совершенно непонятно, как себя вести, если у вас поменяется конфигурация мониторов, разрешения или ещё что-либо. Тогда просто перезапуск программы может ничего не дать и окно останется в таком месте, откуда его достать будет проблематично.
Чо, опять матчасть? Бывает. Я тоже как-то в молодости так недоглядел. 5 минуть чтения хэлпов и был найден TScreen.Monitors[]
http://docs.embarcadero.com/products/ra ... itors.htmlЩас это проще - всё онлайн.
Чтобы экран не загромождать. Да и в будущих версиях мы её выпилим, шрифтовая разметка будет работать по-другому.
ИМХО, решать за всех пользователей, что им хорошо и что плохо, - это плохая идея. Оставьте пользователю возможность включать, выключать и настраивать под свои хотелки все возможные в программе функции и прибамбасы. Смотрите на программу не с точки зрения эффективности, эргономики, оптимизации и т.п., а с точки зрения пользователей, которые все разные.
Ввиду экзотической ситуации — можно написать плагин, который решит вашу проблему (будет просто железобетонно помнить размеры, наплевав на всё), надо будет немного доработать API.
Если вам это реально нужно — пишите.
Не надо никаких костылей, умоляю! Это неприлично. На данный момент нужно просто выявить баг с восстановлением позиции окна, и продолжить двигаться дальше.
Надеюсь, текст выше убедил вас, что это не экзотическая ситуация, а вполне обычная. Я сам могу написать крохотную программу, которая будет расставлять окна, как я хочу (даже за пределами десктопа), но это же не наш метод, правда?
Пожалуйста, перестаньте думать, будто я сплю и вижу, как бы обвинить вас в некомпетенции. Напротив - я помочь хочу, мне программа нравится. Всё знать невозможно, т.е. не знать что-то - это нормально. Я готов ответить на любые ваши вопросы. Тестирование вашего чата продолжается.
У вас нет необходимых прав для просмотра вложений в этом сообщении.