Создание мода "Бортовой журнал"

Программы для игр серии Star Control
Аватара пользователя
Vasaka
MOSC Team
Сообщения: 3195
Регистрация: 24 янв 2011

Создание мода "Бортовой журнал"

Сообщение Vasaka »

Может и к окну UQM можно что-нибудь приделать, за что его можно будет оттаскивать на любую понравившуюся высоту.
:nea:

это, я так понимаю, уже из разряда фантастики, в смысле сложных задач, требующих ковырять чужой код.
Не только ковырять, но и собирать. И не только код, но и то, при помощи чего он пишется и собирается.
Он не в Визуал Студии пишется.
Аватара пользователя
SLY
Сообщения: 3409
Регистрация: 23 сен 2013

Создание мода "Бортовой журнал"

Сообщение SLY »

Ну я примерно так и предполагал :). Поэтому всё же вернусь к первому вопросу.. Как в Win 7 оттащить любое окно максимально вверх, чтобы оно не выравнивалось по верхнему краю? Какие есть идеи?
Аватара пользователя
Vasaka
MOSC Team
Сообщения: 3195
Регистрация: 24 янв 2011

Создание мода "Бортовой журнал"

Сообщение Vasaka »

Как в Win 7 оттащить любое окно максимально вверх, чтобы оно не выравнивалось по верхнему краю?
Никак. В Вин8 то же самое.

Какие есть идеи?
1. Поставить галочку "Скрывать панель инструментов автоматически".
2. Срыть её руками, уменьшив до нуля.
3. Перенести её на левую или правую сторону.

У меня она живёт на правой стороне экрана. Очень удобно.
Аватара пользователя
SLY
Сообщения: 3409
Регистрация: 23 сен 2013

Создание мода "Бортовой журнал"

Сообщение SLY »

Vasaka писал(а): 13 фев 2015, 22:16Никак. В Вин8 то же самое.

Если это действительно так, то печаль. Потому что оконный режим UQM HD более менее нормально выглядит только в 1920*1080. Во всех остальных разрешениях нужный размер достигается только через F11. Ну или через фулл-скрин, но в нём бортового журнала не будет. Обидно, что в Win XP я смог получить заветную желаемую картинку в 1366*768, а в Win 7, получается, не cмогу. Но пока всё ещё надеюсь, что способы всё-таки есть.
Vasaka писал(а): 13 фев 2015, 22:161. Поставить галочку "Скрывать панель инструментов автоматически".
2. Срыть её руками, уменьшив до нуля.
3. Перенести её на левую или правую сторону.

У меня она живёт на правой стороне экрана. Очень удобно.

С панелью как раз проблем нет. "Скрывать автоматически" вполне достаточно. Перенос в стороны ничего не даёт - там точно также как и со скрытой снизу, остаётся поднять окно UQM на размер шапки, чтобы увидеть всю область игры.
Аватара пользователя
SLY
Сообщения: 3409
Регистрация: 23 сен 2013

Создание мода "Бортовой журнал"

Сообщение SLY »

Победил проблему в Win 7!! :dance:

Решение:

Панель управления - Центр специальных возможностей - Облегчение работы с мышью

Поставить галку на "Отключение автоматического упорядочения окон при их перемещении к границе экрана"

:dance2:
Аватара пользователя
Vasaka
MOSC Team
Сообщения: 3195
Регистрация: 24 янв 2011

Создание мода "Бортовой журнал"

Сообщение Vasaka »

Победил проблему в Win 7!!
Ну, здорово! :cool:

Решение:

Панель управления - Центр специальных возможностей - Облегчение работы с мышью

Поставить галку на "Отключение автоматического упорядочения окон при их перемещении к границе экрана"
Может в шапку вынести?
Аватара пользователя
SLY
Сообщения: 3409
Регистрация: 23 сен 2013

Создание мода "Бортовой журнал"

Сообщение SLY »

Vasaka писал(а): 14 фев 2015, 00:49Может в шапку вынести?

Да. Но не в эту :). Эту информацию я, во-первых, добавлю в тему "Установка UQM HD". У меня там описаны варианты запуска, в том числе и в таком режиме. Но, как оказалось, та информация актуальна только для Win XP, добавлю ещё и по Win 7. А во-вторых, подобно тому, как ты создавал темы для трейнеров Снежка, под Малиновскую утилитку я создам отдельную тему, о чём уже говорил выше. Там в шапке будет вступление (что это и зачем), скачивание, описание возможностоей контекстного меню и в конце - условия максимально удобного её использования, в которые как раз и попадёт эта информация. Затем попрошу тебя закинуть её на сайт отдельным пунктом "Бортовой Журнал" в подраздел UQM HD, потому что прежде всего она создавалась для него. C UQM 0.7 её как бы тоже можно использовать, но там, во-первых, только в жёстких оконных режимах, которые нельзя никак масштабировать, а во-вторых, там оно смотреться не будет, потому что справа будет сплошное "мыло", а слева чёткий блок. Поэтому изначально лучше закинуть в UQM HD, как в первую очередь для него, но с оговоркой что и в UQM 0.7 это можно использовать.

Так, теперь вернёмся к самой утилитке. В общем, теперь, после всех её доработок и манипуляций с Win 7, я смог добиться вот такой картинки. И уже доволен как слон :). Единственное, что нарушает идиллию - это полоса прокрутки, когда появляется, но и с ней можно жить. Кстати, вы могли наверное заметить на скриншотах, что в левом нижнем углу под утилитой пустое пространство. Это походу Win7, которая пытается всё контролировать, когда её не просят, не даёт растягивать окна программ выше вертикали текущего разрешения. В данном случае эта область образовалась из-за того, что я ровно на такое же расстояние оттащил программу вверх, скрыв и её шапку за экраном. Но бог с ним, с этим тоже можно жить. Это просто для информации. Ещё в результате тестов в Win 7 всплыл нюанс с запоминаением размера окна. После каждого открытия и закрытия программы, используя вывод рамки с крестиком, оно у меня увеличивается в размерах. Т.е. когда я запускаю, вызываю рамку, закрываю, затем опять запускаю, вызываю рамку, закрываю и т.д. - окно утилитки постоянно "растёт". Если рамку не вызывать, а использовать "Закрыть" в контекстном меню, то всё работает нормально. Вот такой вот баг. Но, кстати, нет худа без добра. Используя этот глюк, можно обмануть Win 7 и сделать программу длиннее, чем вертикаль монитора, тем самым закрыв нижнюю левую область.

Подытожу. Что ещё можно сделать:

1. Полоса прокрутки. Если всё-таки есть возможность что-нибудь с ней сделать, было бы здорово. Нет, так нет.
2. Не хватает кнопки "свернуть". Сегодня лишний раз в этом убедился. Иногда нужно.
3. Мелочь, но в контекстном меню пункт "Шрифт текста" лучше сократить до простого "Шрифт". Проще будет ориентироваться.
4. Ну и баг с увеличивающимся размером окна. С ним тоже можно жить, т.к. через "Закрыть" в меню всё работает нормально.
Аватара пользователя
Vasaka
MOSC Team
Сообщения: 3195
Регистрация: 24 янв 2011

Создание мода "Бортовой журнал"

Сообщение Vasaka »

Да. Но не в эту . Эту информацию я, во-первых, добавлю в тему "Установка UQM HD". У меня там описаны варианты запуска, в том числе и в таком режиме. Но, как оказалось, та информация актуальна только для Win XP, добавлю ещё и по Win 7. А во-вторых, подобно тому, как ты создавал темы для трейнеров Снежка, под Малиновскую утилитку я создам отдельную тему, о чём уже говорил выше. Там в шапке будет вступление (что это и зачем), скачивание, описание возможностоей контекстного меню и в конце - условия максимально удобного её использования, в которые как раз и попадёт эта информация. Затем попрошу тебя закинуть её на сайт отдельным пунктом "Бортовой Журнал" в подраздел UQM HD, потому что прежде всего она создавалась для него. C UQM 0.7 её как бы тоже можно использовать, но там, во-первых, только в жёстких оконных режимах, которые нельзя никак масштабировать, а во-вторых, там оно смотреться не будет, потому что справа будет сплошное "мыло", а слева чёткий блок. Поэтому изначально лучше закинуть в UQM HD, как в первую очередь для него, но с оговоркой что и в UQM 0.7 это можно использовать.
Хорошо. :yes:

Так, теперь вернёмся к самой утилитке. В общем, теперь, после всех её доработок и манипуляций с Win 7, я смог добиться вот такой картинки. И уже доволен как слон . Единственное, что нарушает идиллию - это полоса прокрутки, когда появляется, но и с ней можно жить. Кстати, вы могли наверное заметить на скриншотах, что в левом нижнем углу под утилитой пустое пространство. Это походу Win7, которая пытается всё контролировать, когда её не просят, не даёт растягивать окна программ выше вертикали текущего разрешения. В данном случае эта область образовалась из-за того, что я ровно на такое же расстояние оттащил программу вверх, скрыв и её шапку за экраном. Но бог с ним, с этим тоже можно жить. Это просто для информации. Ещё в результате тестов в Win 7 всплыл нюанс с запоминаением размера окна. После каждого открытия и закрытия программы, используя вывод рамки с крестиком, оно у меня увеличивается в размерах. Т.е. когда я запускаю, вызываю рамку, закрываю, затем опять запускаю, вызываю рамку, закрываю и т.д. - окно утилитки постоянно "растёт". Если рамку не вызывать, а использовать "Закрыть" в контекстном меню, то всё работает нормально. Вот такой вот баг. Но, кстати, нет худа без добра. Используя этот глюк, можно обмануть Win 7 и сделать программу длиннее, чем вертикаль монитора, тем самым закрыв нижнюю левую область.
Теоретически, нет ничего сложного в том, чтобы цифрами указать нужный размер. Вопрос только откуда эти цифры брать. Или конфигурационный файл надо делать, или интерфейс для этого.
Аватара пользователя
Malin
Сообщения: 2022
Регистрация: 28 май 2023

Создание мода "Бортовой журнал"

Сообщение Malin »

Vasaka писал(а):А это зачем? Я ничего не подключал. Просто создал ВинФорм приложение. Всё что нужно уже там было.

Твоё приложение получало информацию о окнах открытых в твоём же приложении. Вот тебе домашнее задание: попробуй заставить свою программу получить размеры окна стороннего приложения, скажем Блокнота.
Как ты обратишься к Блокноту, если у тебя нет ссылки на это приложение?
Vasaka писал(а):
SLY писал(а):
Может и к окну UQM можно что-нибудь приделать, за что его можно будет оттаскивать на любую понравившуюся высоту. ...
это, я так понимаю, уже из разряда фантастики, в смысле сложных задач, требующих ковырять чужой код.

Не только ковырять, но и собирать. И не только код, но и то, при помощи чего он пишется и собирается.
Он не в Визуал Студии пишется.

Всё при помощи того же user32.dll можно управлять размером и положением стороннего приложения (если оно оконное). При этом лезть в само приложения нет нужны, как и в компиляции.
SLY писал(а):1. Полоса прокрутки. Если всё-таки есть возможность что-нибудь с ней сделать, было бы здорово. Нет, так нет.
2. Не хватает кнопки "свернуть". Сегодня лишний раз в этом убедился. Иногда нужно.
3. Мелочь, но в контекстном меню пункт "Шрифт текста" лучше сократить до простого "Шрифт". Проще будет ориентироваться.
4. Ну и баг с увеличивающимся размером окна. С ним тоже можно жить, т.к. через "Закрыть" в меню всё работает нормально.

Принял.
Vasaka писал(а):Теоретически, нет ничего сложного в том, чтобы цифрами указать нужный размер. Вопрос только откуда эти цифры брать. Или конфигурационный файл надо делать, или интерфейс для этого.

Это ещё зачем? Никаких цифр, только визуально наглядный интерфейс. И управляемые уголки.
Когда у меня дойдут руки (всё сделанное до текущего момента - банальная элементарщина) сделаю изменение размера без вызова рамки приложения (а рамку вообще выпилю - она сейчас только лишь как "костыль", временно)
Аватара пользователя
Vasaka
MOSC Team
Сообщения: 3195
Регистрация: 24 янв 2011

Создание мода "Бортовой журнал"

Сообщение Vasaka »

Твоё приложение получало информацию о окнах открытых в твоём же приложении. Вот тебе домашнее задание: попробуй заставить свою программу получить размеры окна стороннего приложения, скажем Блокнота.
Как ты обратишься к Блокноту, если у тебя нет ссылки на это приложение?

Понятно. Ты про размеры стороннего приложения говоришь, а я про размер рабочей области экрана по вертикали. Это можно получить из своей программы.
А размер UQM мы знаем. Размер рабочей области экрана минус размер UQM который мы знаем - получаем размер нашего окна.

Всё при помощи того же user32.dll можно управлять размером и положением стороннего приложения (если оно оконное). При этом лезть в само приложения нет нужны, как и в компиляции.
Ясно. Полезная штука.

Это ещё зачем? Никаких цифр, только визуально наглядный интерфейс. И управляемые уголки.
Когда у меня дойдут руки (всё сделанное до текущего момента - банальная элементарщина) сделаю изменение размера без вызова рамки приложения (а рамку вообще выпилю - она сейчас только лишь как "костыль", временно)
Тебе виднее. :D Я с ходу пытаюсь придумать решения, которые я смог бы реализовать. Если есть лучшее решение или более удобное для тебя, нет проблем.
Ответить