0 / 0 / 1
Регистрация: 15.04.2013
Сообщений: 184
|
|
Отловить нажатие левой кнопки мыши на картинке01.09.2014, 12:40. Показов 1678. Ответов 2
Метки нет Все метки)
(
Всем Привет! я только начал изучать directx, у меня появился вопрос :
Итак, я решил сделать вывод на экран картинки и по нажатию левой кнопки мыши на эту картинку выводить messageBox со словом "hello, world". картинку я так понял нужно выводить используя текстуру, messageBox тоже в принципе понятно, как выводить средствами winApi. а вот как отловить нажатие мыши на картинку вообще не понимаю .... была лишь одна идея делать это также через winApi , там ловить сообщение, и проверять координаты мыши и координаты картинки, но думаю что может быть есть какой то другой вариант ? Да и вообще интересно как обрабатываются нажатие мыши на определенном месте в окне .... Может кто-нибудь знает как это сделать грамотно ? Всем спасибо за внимание!!!
0
|
01.09.2014, 12:40 | |
Ответы с готовыми решениями:
2
Отловить нажатие левой кнопки мыши
|
![]() 21 / 21 / 0
Регистрация: 28.02.2014
Сообщений: 138
|
||||||
03.09.2014, 01:50 | ||||||
эм есть 2 варианта для статичной 2д картинки. И для 3д обьекта. Но думаю так как всеравно прийдется тебе учить и для 3д то лучше сразу начать со сложного.
Для этого нужно применять двовльно сложную для начинающего методику известную как Picking. Самое наверно простое обьяснение вот тут http://old.shatalov.su/ru/arti... icking.php Более детально но тут есть ошибки http://pmg.org.ru/rm/pick.htm а так вобще в гугл с запросом Picking. Грубо говоря тебе нада расчитать луч от твоей камеры и проверить пересекает ли он полигон на твоей картинке. В случае 3д это сложнее если использовать перспективу. И немного легче если 2д орто матрицу. Если картинку не двигать и известны ее координаты то можно получить координаты мышки типо
Добавлено через 10 минут нажатее самой кнопки мышки если уж так надо левой делаетсо вот так: case WM_LBUTTONDOWN: if(pick(функция пикинга(выбрано ли?))){ вывести месадж бокс} return 0; это все в оконной процедуре есесно.
2
|
0 / 0 / 1
Регистрация: 15.04.2013
Сообщений: 184
|
|
04.09.2014, 12:02 [ТС] | |
Спасибо вам огромное за такой развернутый ответ !!!!
0
|
04.09.2014, 12:02 | |
Помогаю со студенческими работами здесь
3
Ограничить передвижение курсора мыши левой нижней четвертью экрана.При нажатие левой клавиши мыши выключить индикатор NumLock(+Звук),при нажатие право Нажатие левой кнопки мыши Нажатие левой кнопки мыши Нажатие левой кнопки мыши Программное нажатие левой кнопки мыши Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Опции темы | |
|
Новые блоги и статьи
![]() |
||||
Динамические массивы в C++ - создание и использование
NullReferenced 27.04.2025
Динамические массивы представляют собой один из фундаментальных инструментов программирования на C++, позволяющий создавать структуры данных, размер которых определяется во время выполнения. . .
|
Асинхронный JavaScript: Промисы, Async/Await и Fetch API
Reangularity 27.04.2025
Пользователь заходит на веб-страницу, нажимает кнопку и. . . ничего не происходит. Сайт словно замер. Через несколько секунд всё внезапно оживает, но пользователь уже успел закрыть вкладку. Знакомая. . .
|
Management on GitLab and repository management in Visual Studio code
jigi33 27.04.2025
- repo management on GitLab
- CI/ CD in GitLab
- VCS repository management in Visual Studio code
(see attachments)
|
Kanban или Scrum - что выбрать?
EggHead 27.04.2025
Kanban и Scrum — уже много лет удерживают лидирующие позиции среди гибких подходов. Руководители проектов и команды разработчиков то и дело сталкиваются с дилеммой: какой из этих двух методов выбрать. . .
|
Кастомные Middleware на C# в ASP.NET Core
UnmanagedCoder 27.04.2025
Разработка веб-приложений сегодня мало напоминает монолитное программирование прошлых лет. На смену громоздким блокам кода пришла модульная архитектура, где каждый компонент выполняет строго. . .
|
Анализ и линтинг кода JavaScript: ESLint, Prettier и JSHint
run.dev 26.04.2025
JavaScript прошёл долгий путь от простого языка для анимации веб-страниц до основы современной веб-разработки. С ростом сложности приложений, увеличением кодовых баз и масштабированием команд. . .
|
Паттерны в Python: Singleton, Factory и Observer
py-thonny 26.04.2025
Паттерны проектирования — это проверенные временем решения типовых проблем разработки программного обеспечения. Их история берёт начало с книги "Приёмы объектно-ориентированного проектирования. . . .
|
Исключения в C#: Stack Overflow, Access Violation и Out of memory
stackOverflow 26.04.2025
Исключения в C# — это не только механизм оповещения о проблемах, а целое искусство управления потоком выполнения программы в экстремальных ситуациях. Обычное исключение, например,. . .
|
Логирование в C# ASP.NET Core с помощью Serilog, ElasticSearch, Kibana
stackOverflow 25.04.2025
Помните те времена, когда для анализа проблемы приходилось подключаться к серверу, искать нужный лог-файл среди десятков других и вручную фильтровать тысячи строк в поисках ошибки? К счастью, эти дни. . .
|
Структура "железный OnKeyUp" вместо антидребезга. Полностью асинхронный счётчик.
Hrethgir 25.04.2025
Программа для симуляции схемы - Logisim Evolution
В общем какое-то время отвлёкся, так было надо, теперь когда запилю это на verilog и FPGA , досоставлю заявку в ФИПС на полезную модель - не готов. . .
|