Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562

Окно перемещает себя

14.11.2014, 06:29. Показов 598. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
GetClientRect (Window, &ClientRectangle);
ScreenToClient(Parent, WindowRectangle); //На дебаге здесь WindowRectangle.bottom равен 194
MoveWindow(Window, WindowRectangle.left, WindowRectangle.bottom, Right+2, Bottom+2, TRUE);
GetClientRect (Window, &ClientRectangle);
ScreenToClient(Parent, WindowRectangle); // А здесь WindowRectangle.bottom уже равен 204
. Что я делаю не так?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.11.2014, 06:29
Ответы с готовыми решениями:

MoveFileEx не перемещает файл
создаю программу, которая переместит файл C:\1.txt в C:\2.txt, но не выходит #include<Windows.h> #include<CommCtrl.h> ...

DataContent XAML окно не видит описание себя же
Простое приложение - MainWindow.xaml + MainWindow.xaml.cs, собсно и всё. на хамле нарисован ListBoх, который надо связать с коллекцией,...

Окно со стилем рамки bsNone ведущее себя, как bsSizeable
Подскажите, какие API-функции использовать для эмуляции полноценного окна. Конкретно интересует обработка Win+стрелки и "удары" о...

3
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
14.11.2014, 21:54
У меня несколько вопросов:
1. Второй параметр функции ScreenToClient - указатель на структуру POINT, судя по полям left и bottom ты передаешь туда RECT. Зачем?
2. Что такое WindowRectangle?
3. Что такое Window?
4. Что такое Parent?
5. Как они все определены?
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
15.11.2014, 07:56  [ТС]
Цитата Сообщение от castaway Посмотреть сообщение
1. Второй параметр функции ScreenToClient - указатель на структуру POINT, судя по полям left и bottom ты передаешь туда RECT. Зачем?
Затем, что она перегружена и принимает ссылку на RECT.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
       void                           ScreenToClient                                        (      HWND          Window     ,
                                                                                                   RECT         &Rectangle  )
{
 POINT Temp;
 Temp.x=Rectangle.left;
 Temp.y=Rectangle.top;
 ScreenToClient(Window, &Temp);
 Rectangle.left=Temp.x;
 Rectangle.top =Temp.y;
 Temp.x=Rectangle.right;
 Temp.y=Rectangle.bottom;
 ScreenToClient(Window, &Temp);
 Rectangle.right =Temp.x;
 Rectangle.bottom=Temp.y;
}
Добавлено через 1 минуту
Цитата Сообщение от castaway Посмотреть сообщение
3. Что такое Window?
Первый параметр оконной процедуры.
Цитата Сообщение от castaway Посмотреть сообщение
Что такое Parent?
Дескриптор родительского окна. Имеет тип HWND.

Добавлено через 58 секунд
Цитата Сообщение от castaway Посмотреть сообщение
Что такое WindowRectangle?
RECT.

Добавлено через 7 минут
Всё, нашёл. Читаю один ректенгл, а преобразую другой.
C++
1
2
3
4
5
GetWindowRect (Window, &WindowRectangle);
ScreenToClient(Parent, WindowRectangle);
MoveWindow(Window, WindowRectangle.left, WindowRectangle.top, Right+2, Bottom+2, TRUE);// Следующие две стро иже не нужны.
GetWindowRect (Window, &WindowRectangle);
ScreenToClient(Parent, WindowRectangle);
0
Эксперт С++
4986 / 3093 / 456
Регистрация: 10.11.2010
Сообщений: 11,170
Записей в блоге: 10
15.11.2014, 08:24
Т.е то что она перегружена надо было догадаться?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.11.2014, 08:24
Помогаю со студенческими работами здесь

Создать окно произвольного размера, скрыть окно, показать окно, удалить окно.
Создать окно произвольного размера, скрыть окно, показать окно, удалить окно. Для создания окна необходимо произвести следующие...

Нужно, чтобы форма распечатала сама себя, или только часть себя
Помогите, плиз! Нужно, чтобы форма (для этого имеется кнопка на форме) распечатала сама себя, или только часть себя. Как это сделать?...

STL Вектор Копирование элемнтов себя из себя
Смысл такой, вектор содержит несколько чисел 1,2,3,4,5,6,7 Я хочу на алгоритмах скопировать некоторый блок элементов. например ...

Не перемещает приложения
Здравствуйте! У меня планшет Prestigio multipad PMP5580C DUO с недавнего времени перестал перемещать приложения на SD карту. Раньше всё...

Перемещает данные о товаре
Помогите сделать тригер. Создать тригер который перемещает данные о товаре, у которого истек срок годности в отдельную таблицу _...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Видеокарта простаивает ночами? Вот 4 проекта, которые загрузят её наукой
Programma_Boinc 10.04.2026
Видеокарта простаивает ночами? Вот 4 проекта, которые загрузят её наукой Если на Windows стоит дискретная NVIDIA или AMD — можно отдать её вычислительную мощность реальным исследованиям. . . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru