|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
Как получить размеры и положение всего окна?03.11.2014, 12:06. Показов 7734. Ответов 24
Метки нет (Все метки)
0
|
|
| 03.11.2014, 12:06 | |
|
Ответы с готовыми решениями:
24
Как установить размеры и положение нового окна? Как получить размеры клиентской области окна-родителя в функции дочернего окна? Как в апплете получить размеры окна броузера? |
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
| 03.11.2014, 13:46 [ТС] | |
|
На винде.
0
|
|
|
|
|
| 03.11.2014, 13:50 | |
|
GetWindowRect
Не по теме: Без тебя на форуме скучно..
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||||
| 03.11.2014, 14:35 [ТС] | ||||||
0
|
||||||
|
|
|
| 03.11.2014, 15:14 | |
|
Лично я не понял где там -8 ...
Не совсем по теме: Зачем каждый раз вызывать DefWindowProc? Зачем каждый раз сохранять размер и позицию? Куда записывается позиция, как читается и как устанавливается? Не по теме: Quite - это тихий, Quit - это выход. Добавлено через 21 секунду Лично я не понял где там -8 ... Не совсем по теме: Зачем каждый раз вызывать DefWindowProc? Зачем каждый раз сохранять размер и позицию? Куда записывается позиция, как читается и как устанавливается? Не по теме: Quite - это тихий, Quit - это выход.
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||
| 03.11.2014, 15:41 [ТС] | |||||
|
Добавлено через 23 секунды Добавлено через 18 секунд Добавлено через 41 секунду
0
|
|||||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||||||
| 03.11.2014, 16:09 [ТС] | ||||||
|
Что не понятного? Жму сюда:
,потом в оконной процедуре
0
|
||||||
|
|
|||
| 03.11.2014, 16:25 | |||
|
Когда ты жмёшь на кнопку "Развернуть", окно получает сообщение WM_SIZE с кодом SIZE_MAXIMIZED в wParam. Если окно "развёрнуто" то информацию об этом тоже нужно сохранить в файл конфигурации, чтобы потом его можно было развернуть с помощью функции ShowWindow( hWnd, SW_MAXIMIZE ); Добавлено через 15 секунд Когда ты жмёшь на кнопку "Развернуть", окно получает сообщение WM_SIZE с кодом SIZE_MAXIMIZED в wParam. Если окно "развёрнуто" то информацию об этом тоже нужно сохранить в файл конфигурации, чтобы потом его можно было развернуть с помощью функции ShowWindow( hWnd, SW_MAXIMIZE );
0
|
|||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
||
| 03.11.2014, 16:26 [ТС] | ||
|
. Это весь скриншот. Но GetWindowRect прочитала отрицательные координаты.
0
|
||
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|
| 03.11.2014, 16:30 [ТС] | |
|
А вот чему эти координаты соответствуют:
. Я сохранил прочитанные координаты в файл и использовал для функции CreateWindow и это тоже весь экран.
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||||
| 03.11.2014, 16:33 [ТС] | |||||||
0
|
|||||||
|
|
|
| 03.11.2014, 16:36 | |
|
Гугл (кстати удобная штука) говорит, что отрицательные координаты потому что они относительны какого-то дочернего элемента (может быть рабочей области). На другом форуме нашел такой же вопрос, там чувак пишет, что решил проблему путем поиска главного окна через FindWindowEx.
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||||||
| 03.11.2014, 16:47 [ТС] | |||||||
|
Тогда почему при
Добавлено через 1 минуту
0
|
|||||||
|
47 / 28 / 12
Регистрация: 23.01.2013
Сообщений: 125
|
|
| 03.11.2014, 16:52 | |
|
Такие дела. Нужно пользоваться отладчиком чтобы.
Когда вы нажимаете развернуть окно, по ширине оно разворачивается на всю клиентскую ширину, без рамки, но getwindowrect возвращает координаты с рамкой по краям.
0
|
|
|
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
|
|||
| 03.11.2014, 17:00 [ТС] | |||
|
Добавлено через 1 минуту
0
|
|||
|
47 / 28 / 12
Регистрация: 23.01.2013
Сообщений: 125
|
|
| 03.11.2014, 17:30 | |
|
Я бы, наверно, выбрал сохранять еще флаг окна(развернуто, свернуто) и показывать с ним. А может сделал бы по другому, тут что вам нужно, способ тысяча. Влом вникать дальше. Можете проверять wParam; // resizing flag
и делать расчеты, как вам кажется правильно или брать ширину клиентскую, или взять ширину монитора... Сами придумайте способ. Добавлено через 16 секунд Я бы, наверно, выбрал сохранять еще флаг окна(развернуто, свернуто) и показывать с ним. А может сделал бы по другому, тут что вам нужно, способ тысяча. Влом вникать дальше. Можете проверять wParam; // resizing flag и делать расчеты, как вам кажется правильно или брать ширину клиентскую, или взять ширину монитора... Сами придумайте способ.
0
|
|
| 03.11.2014, 17:30 | |
|
Помогаю со студенческими работами здесь
20
Как помимо сообщения WM_SIZE получить размеры клиентской области окна?
Какими способами можно в приложении ASP.NET получить размеры экрана пользователя и размер окна браузера? Как узнать размеры окна? Как узнать размеры окна? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|