WinAPI Layout Editor
Цитата: dehote9223 от 17.08.2025, 19:51Всем привет!
WinAPI Layout Editor — это инструмент для разработчиков, который позволяет визуально редактировать расположение и размеры элементов управления в приложениях, написанных на C/C++ с использованием WinAPI.
Программа решает одну из самых трудоёмких задач при работе с WinAPI — рутинную правку числовых координат и размеров в коде.
Вместо того чтобы многократно перекомпилировать проект для проверки каждого изменения, разработчик может открыть исходный файл в редакторе, передвинуть и изменить размеры элементов с помощью мыши и клавиатуры, а затем сохранить изменения прямо в исходный код.
Основные возможности
Перемещение и изменение элементов интерфейса в реальном времени.
Одиночное и групповое перетаскивание элементов мышью для быстрой компоновки.
Выделение нескольких элементов с помощью рамки мышью или удерживая Ctrl/Shift.Использование клавиш-стрелок для попиксельного перемещения.
Изменение размеров с помощью Shift + клавиши-стрелки.
Отмена и повторение последних действий с помощью стандартных сочетаний клавиш Ctrl+Z и Ctrl+Y.
Открытый исходный код и развитие проекта
WinAPI Layout Editor — это проект с открытым исходным кодом.
Это значит, что любой желающий может изучить, как он работает, адаптировать его под свои нужды или принять участие в его развитии.Скачать можно в облаке
disk.yandex.ru/d/2x872gVhAY_59Q
Всем привет!
WinAPI Layout Editor — это инструмент для разработчиков, который позволяет визуально редактировать расположение и размеры элементов управления в приложениях, написанных на C/C++ с использованием WinAPI.
Программа решает одну из самых трудоёмких задач при работе с WinAPI — рутинную правку числовых координат и размеров в коде.
Вместо того чтобы многократно перекомпилировать проект для проверки каждого изменения, разработчик может открыть исходный файл в редакторе, передвинуть и изменить размеры элементов с помощью мыши и клавиатуры, а затем сохранить изменения прямо в исходный код.
Основные возможности
Перемещение и изменение элементов интерфейса в реальном времени.
Одиночное и групповое перетаскивание элементов мышью для быстрой компоновки.
Выделение нескольких элементов с помощью рамки мышью или удерживая Ctrl/Shift.
Использование клавиш-стрелок для попиксельного перемещения.
Изменение размеров с помощью Shift + клавиши-стрелки.
Отмена и повторение последних действий с помощью стандартных сочетаний клавиш Ctrl+Z и Ctrl+Y.
Открытый исходный код и развитие проекта
WinAPI Layout Editor — это проект с открытым исходным кодом.
Это значит, что любой желающий может изучить, как он работает, адаптировать его под свои нужды или принять участие в его развитии.
Скачать можно в облаке
disk.yandex.ru/d/2x872gVhAY_59Q
Цитата: dehote9223 от 18.08.2025, 08:52Улучшена функция сохранения
Вместо поиска по одной строке, редактор теперь считывает блок кода, начиная с найденной строки вызова CreateWindow и заканчивая символом точки с запятой (;).
Регулярное выражение применяется ко всему найденному блоку, что гарантирует нахождение и замену координат вне зависимости от стиля форматирования.
После сохранения измененный многострочный вызов автоматически преобразуется в однострочный для упрощения дальнейшей обработки.
Это позволяет корректно обрабатывать отформатированный, многострочный код и устраняет ошибку «Не удалось найти структуру вызова...».
Ссылка та же
Улучшена функция сохранения
Вместо поиска по одной строке, редактор теперь считывает блок кода, начиная с найденной строки вызова CreateWindow и заканчивая символом точки с запятой (;).
Регулярное выражение применяется ко всему найденному блоку, что гарантирует нахождение и замену координат вне зависимости от стиля форматирования.
После сохранения измененный многострочный вызов автоматически преобразуется в однострочный для упрощения дальнейшей обработки.
Это позволяет корректно обрабатывать отформатированный, многострочный код и устраняет ошибку «Не удалось найти структуру вызова...».
Ссылка та же
Цитата: dehote9223 от 18.08.2025, 14:37Улучшения навигации
Масштабирование рабочей области с помощью колеса мыши теперь происходит относительно положения курсора, а не центра окна.
Это стандартное поведение для графических редакторов, которое делает навигацию гораздо более интуитивной и быстрой.Реализована возможность перемещать всю рабочую область, что незаменимо при работе с большим увеличением.
1. Зажмите среднюю кнопку мыши (колесо) и двигайте курсор.
2. Зажмите клавишу Пробел и перемещайте область левой кнопкой мыши.
Улучшения навигации
Масштабирование рабочей области с помощью колеса мыши теперь происходит относительно положения курсора, а не центра окна.
Это стандартное поведение для графических редакторов, которое делает навигацию гораздо более интуитивной и быстрой.
Реализована возможность перемещать всю рабочую область, что незаменимо при работе с большим увеличением.
1. Зажмите среднюю кнопку мыши (колесо) и двигайте курсор.
2. Зажмите клавишу Пробел и перемещайте область левой кнопкой мыши.
Цитата: dehote9223 от 18.08.2025, 19:15Режим реального отображения
Теперь можно увидеть, как элементы управления (кнопки, поля ввода) будут выглядеть в конечном приложении.
Это помогает точнее настроить их размеры и взаимное расположение.Переключение между режимами осуществляется нажатием клавиши F2.
П.С. Есть что доработать
Режим реального отображения
Теперь можно увидеть, как элементы управления (кнопки, поля ввода) будут выглядеть в конечном приложении.
Это помогает точнее настроить их размеры и взаимное расположение.
Переключение между режимами осуществляется нажатием клавиши F2.
П.С. Есть что доработать
Цитата: dehote9223 от 19.08.2025, 09:23В режиме "реального отображения" некоторые элементы управления (в частности, большие GroupBox-ы) было невозможно выделить, переместить или изменить их размер.
Проблема возникала, когда эти крупные элементы были частично перекрыты другими, более мелкими элементами (например, текстовыми метками STATIC).Старый алгоритм выбора при клике находил все элементы под курсором и ошибочно выбирал тот, у которого была наименьшая площадь, а не тот, который находился визуально сверху.
Вместо сравнения площадей, новый алгоритм теперь корректно учитывает Z-порядок (визуальное наслоение) элементов.
В режиме "реального отображения" некоторые элементы управления (в частности, большие GroupBox-ы) было невозможно выделить, переместить или изменить их размер.
Проблема возникала, когда эти крупные элементы были частично перекрыты другими, более мелкими элементами (например, текстовыми метками STATIC).
Старый алгоритм выбора при клике находил все элементы под курсором и ошибочно выбирал тот, у которого была наименьшая площадь, а не тот, который находился визуально сверху.
Вместо сравнения площадей, новый алгоритм теперь корректно учитывает Z-порядок (визуальное наслоение) элементов.
Цитата: dehote9223 от 19.08.2025, 16:21Реализована функция переименования элементов интерфейса в режиме реального отображения.
Двойной клик по элементу активирует поле для редактирования его названия.
Чтобы применить новое имя, необходимо нажать Enter или щелкнуть мышью за пределами поля ввода.Это нововведение значительно упрощает и ускоряет процесс локализации и настройки текстовых меток в интерфейсе.
Реализована функция переименования элементов интерфейса в режиме реального отображения.
Двойной клик по элементу активирует поле для редактирования его названия.
Чтобы применить новое имя, необходимо нажать Enter или щелкнуть мышью за пределами поля ввода.
Это нововведение значительно упрощает и ускоряет процесс локализации и настройки текстовых меток в интерфейсе.
Цитата: dehote9223 от 19.08.2025, 16:28
Цитата: dehote9223 от 19.08.2025, 21:04Переименование элементов интерфейса теперь выполняется нажатием на среднюю кнопку мыши (колёcо).
Улучшена стабильность функции переименования в режиме реального отображения (клавиша F2 для смены режима).
Переименование элементов интерфейса теперь выполняется нажатием на среднюю кнопку мыши (колёcо).
Улучшена стабильность функции переименования в режиме реального отображения (клавиша F2 для смены режима).
Цитата: dehote9223 от 20.08.2025, 08:02Теперь можно изменять порядок отрисовки выбранных элементов, перемещая их на передний или задний план.
Это делается с помощью сочетаний клавиш:
Ctrl + стрелка вверх — переместить выбранные элементы на один уровень вперед (выше).
Ctrl + стрелка вниз — переместить выбранные элементы на один уровень назад (ниже).При создании сложных интерфейсов элементы часто перекрывают друг друга.
Из-за этого бывает трудно или невозможно выбрать элемент, который оказался полностью или частично скрыт под другим.Новая функция позволяет "поднять" нужный элемент наверх, чтобы с ним можно было работать (выделить, переместить, изменить размер), или, наоборот, "опустить" мешающий элемент на задний план, не меняя его координат.
Теперь можно изменять порядок отрисовки выбранных элементов, перемещая их на передний или задний план.
Это делается с помощью сочетаний клавиш:
Ctrl + стрелка вверх — переместить выбранные элементы на один уровень вперед (выше).
Ctrl + стрелка вниз — переместить выбранные элементы на один уровень назад (ниже).
При создании сложных интерфейсов элементы часто перекрывают друг друга.
Из-за этого бывает трудно или невозможно выбрать элемент, который оказался полностью или частично скрыт под другим.
Новая функция позволяет "поднять" нужный элемент наверх, чтобы с ним можно было работать (выделить, переместить, изменить размер), или, наоборот, "опустить" мешающий элемент на задний план, не меняя его координат.
Цитата: dehote9223 от 04.09.2025, 06:36Переключение режима отображения клавишей F2
Реалистичный вид показывает настоящие элементы управления (кнопки, поля ввода и т.д.), как они будут выглядеть в приложении.
Схематичный вид показывает элементы в виде простых блоков с технической информацией (номер строки в коде, координаты), что упрощает идентификацию и точную настройку.
Навигация по холсту
Вращайте колесо мыши для приближения или отдаления холста.
Это позволяет работать как с общим видом интерфейса, так и с мелкими деталями.
Зажмите среднюю кнопку мыши (колёсико) или клавишу Пробел и перемещайте мышь, чтобы сдвигать холст.
Перемещение элементов
Зажмите левую кнопку мыши на одном или нескольких выделенных элементах и перетащите их в нужную позицию на холсте.
Или выделите элементы и используйте клавиши со стрелками (←, ↑, →, ↓) для точного, попиксельного перемещения.
Выделите элемент и используйте Ctrl + ↑ или Ctrl + ↓, чтобы переместить его вперёд или назад относительно других элементов.
Изменение размеров
Выделите один или несколько элементов, зажмите клавишу Shift и используйте стрелки:
Shift + ← (стрелка влево) для уменьшения ширины.
Shift + → (стрелка вправо) для увеличения ширины.
Shift + ↑ (стрелка вверх) для уменьшения высоты.
Shift + ↓ (стрелка вниз) для увеличения высоты.Редактирование текста
Кликните по элементу средней кнопкой мыши, чтобы прямо на холсте изменить его заголовок (например, название кнопки).
Гибкое управление
Поддерживается как одиночное, так и групповое выделение и перетаскивание элементов.
Выделять элементы можно рамкой (зажав левую кнопку мыши на пустом месте) или кликая по ним с зажатыми клавишами Ctrl или Shift.
История изменений
Стандартные сочетания клавиш Ctrl+Z и Ctrl+Y позволяют отменять и повторять последние действия.
Скачать можно в облаке
disk.yandex.ru/d/2x872gVhAY_59Q
Переключение режима отображения клавишей F2
Реалистичный вид показывает настоящие элементы управления (кнопки, поля ввода и т.д.), как они будут выглядеть в приложении.
Схематичный вид показывает элементы в виде простых блоков с технической информацией (номер строки в коде, координаты), что упрощает идентификацию и точную настройку.
Навигация по холсту
Вращайте колесо мыши для приближения или отдаления холста.
Это позволяет работать как с общим видом интерфейса, так и с мелкими деталями.
Зажмите среднюю кнопку мыши (колёсико) или клавишу Пробел и перемещайте мышь, чтобы сдвигать холст.
Перемещение элементов
Зажмите левую кнопку мыши на одном или нескольких выделенных элементах и перетащите их в нужную позицию на холсте.
Или выделите элементы и используйте клавиши со стрелками (←, ↑, →, ↓) для точного, попиксельного перемещения.
Выделите элемент и используйте Ctrl + ↑ или Ctrl + ↓, чтобы переместить его вперёд или назад относительно других элементов.
Изменение размеров
Выделите один или несколько элементов, зажмите клавишу Shift и используйте стрелки:
Shift + ← (стрелка влево) для уменьшения ширины.
Shift + → (стрелка вправо) для увеличения ширины.
Shift + ↑ (стрелка вверх) для уменьшения высоты.
Shift + ↓ (стрелка вниз) для увеличения высоты.
Редактирование текста
Кликните по элементу средней кнопкой мыши, чтобы прямо на холсте изменить его заголовок (например, название кнопки).
Гибкое управление
Поддерживается как одиночное, так и групповое выделение и перетаскивание элементов.
Выделять элементы можно рамкой (зажав левую кнопку мыши на пустом месте) или кликая по ним с зажатыми клавишами Ctrl или Shift.
История изменений
Стандартные сочетания клавиш Ctrl+Z и Ctrl+Y позволяют отменять и повторять последние действия.
Скачать можно в облаке
disk.yandex.ru/d/2x872gVhAY_59Q



