|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|
Как отцентрировать своё окно/форму, точно так же, как центрируется стандартный инпутбокс в VB6?30.01.2024, 13:04. Показов 2646. Ответов 29
Метки нет (Все метки)
Как "отцентрировать" своё собственное окно или форму, точно так же, как центрируется стандартный инпутбокс в VB6?
Помогите пожалуйста, решить эту непосильную задачу для меня, бьюсь уже ни один месяц и всё никак не могу решить эту наисложнейшую задачу. Так и не смог разгадать этот алгоритм центровки стандартного инпутбокса. Как я лично это вижу тут есть два пути решения этой сложной задачи: 1. Вскрыть программный код майкрософта инициализации диалогового окна инпутбокса и найти нужный код центровки (это оказалось для меня сложно так и не смог) 2. Придумать самому этот код, эту формулу, чтобы было точно так же как и у майкрософта, чтобы окно "центрировалось" как надо
0
|
|
| 30.01.2024, 13:04 | |
|
Ответы с готовыми решениями:
29
Как создать в WPF точно такое же окно? SefSharp. Как закрыть свое окно? |
|
sleep
4930 / 4590 / 840
Регистрация: 13.04.2015
Сообщений: 9,741
|
|
| 30.01.2024, 18:34 | |
|
0
|
|
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|
| 30.01.2024, 18:42 [ТС] | |
|
I can, у тебя при разрешении 1366х768 топ идёт 193 пикселя???????????
А у меня 197 и в чём логика тогда... Добавлено через 1 минуту I can, высоту заголовка окна тогда надо проверять. Сколько пикселей у тебя высота заголовка окна? Добавлено через 1 минуту У меня высота заголовка окна инпутбокса 23 пикселя Добавлено через 1 минуту Или 28 пикселей в зависимости от стиля окна, пока я ничего не понимаю вообще толком тут Добавлено через 1 минуту Хрен пойми как там у этих майкров этот код написан вообще, вот что значит скрытый код - это зло, лучше когда весь код открыт для программистов конечно
0
|
|
|
sleep
4930 / 4590 / 840
Регистрация: 13.04.2015
Сообщений: 9,741
|
|
| 30.01.2024, 18:42 | |
|
0
|
|
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|
| 30.01.2024, 18:51 [ТС] | |
|
I can, пришли, пожалуйста, скриншот, а я свой покажу
0
|
|
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|
| 30.01.2024, 18:53 [ТС] | |
|
Разрешение поставил 1366х768
0
|
|
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
||
| 30.01.2024, 19:02 [ТС] | ||
|
У меня получается тут отступ по топу 197 при хеите самого окна 146
Добавлено через 49 секунд Это родной InputBox встроенный в VB6 (это важно) так как другие инпутбоксы имеют какие-то отклонения по пикселям уже Добавлено через 6 минут
0
|
||
|
Модератор
|
||||||
| 30.01.2024, 21:07 | ||||||
Сообщение было отмечено HackerVlad как решение
Решение
1
|
||||||
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|
| 30.01.2024, 21:39 [ТС] | |
|
The trick, тестирую твой код сейчас, очень глючит графика при перемещении окна, не пойму почему пока
Добавлено через 7 минут The trick, рекомендую использовать SetWindoPos лучше Добавлено через 36 секунд но причину сильного глючиния графики ещё нужно выяснять
0
|
|
|
Испарился
1741 / 637 / 45
Регистрация: 10.09.2021
Сообщений: 2,769
|
|||||||||||
| 31.01.2024, 00:16 [ТС] | |||||||||||
|
The trick, ну я прописал это в событии кнопки, для тестирования, может в событии загрузки формы и не глючила бы графика, не знаю, не пробовал
Добавлено через 28 секунд но по сути если делать то так чтобы работало хорошо и при событии нажати на кнопку без глючения графики Добавлено через 2 минуты SetWindowPos лучше тем что там не обязательно задавать Width и Height окна , достаточно просто Top и Left поэтому для перемещения окон мне больше нравится SetWindowPos Добавлено через 28 минут The trick, поместил код в событие Form_Load графика перестала глючить вроде Добавлено через 26 секунд Сейчас буду тестировать другие разрешения экрана Добавлено через 3 минуты Да, проверил, работает во всех разрешениях экрана как и надо! Ура! Как тебе это удалось? Я два месяца не мог найти решения Добавлено через 1 минуту Осталось только доработать этот код, что перемещалось и по кнопке без глюков. Добавлено через 16 минут Итак у нас есть победитель The Trick он награждается супер-призом, только он смог разгадать эту формулу. Ура! Слава трюкачу) Добавлено через 1 час 29 минут Либо вот моё решение через SetWindowPos
The trick, а что лучше использовать GetMonitorInfo (MonitorFromWindow) или SPI_GETWORKAREA ??? Не знаешь??? Я раньше всегда пользовался GetMonitorInfo и выбирал монитор через MonitorFromWindow. Я даже не знал кода SPI_GETWORKAREA... Добавлено через 1 минуту Я раньше примерно так делал:
Ура! Разгадана формула! А формула оказалась такова: Размер рабочей области монитора минус высота окна делёное на три Вот и вся формула, которую я так долго искал, оказалось всё так просто
1
|
|||||||||||
| 31.01.2024, 00:16 | |
|
Помогаю со студенческими работами здесь
30
Как показать свое окно ошибки, а не системное? Как создать свое окно для браузера Вывод чужой программы в свое окно. Как?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|