hwnd



Hwnd что это

Автор Kirill ♂ задал вопрос в разделе Другие языки и технологии

C# Что такое дескриптор окна сообщения (HWnd)? и получил лучший ответ

Ответ от Алекс Куха[гуру]
При создании объекта, ему присваивается уникальный дескриптор, который в последующем передается каждой функции, при работе с этим объектом. Это главное различие между процедурным программированием (функциями Windows API) и ООП. 2е связаны с тем экземпляром класса, через который они вызываются, и поэтому не требуют явного указания на объект. 1м необходимо такое указание (что и делается с помощью дескриптора), т. к. они сами по себе никак не связаны ни с одним объектом.
Скорее всего, в оп создаётся таблица, в которой ставится в соответствие этому индексу адрес структуры, которая описывает объект.

Ответ от Ирина В[гуру]
Дескриптор, число, которое однозначно обозначает окно. Все взаимодействия с окнами, на уровне WinAPI, идут через hwnd.

Ответ от Капитан Гугл[гуру]
Дескриптор (дословно - описатель) - код, определяющий какой-то ресурс в системе. Грубо говоря - номер окна в системе.
И, кстати, это относится скорее не к C#, а к WinAPI.

Ответ от [гуру]
Затем же, зачем токены, idы и номерки в раздевалках.
Для идентификации окна.
ООП в WinAPI нет, поэтому функция, создающая окно, возвращает не объект Form с именем Name, а уникальный номер, и функции, работающие с окном, принимают этот номер.
Также и в цикл обработки сообщений (который общий для всего приложения) передается этот номер, чтобы можно было определить, от какого именно окна это сообщение (хотя обычно в цикле сообщения-события не обрабатывают, а используют WndProc)
А в .NET такие свойства, как Handle, это рудимент WinAPI, т. к. и в .NET иногда WinAPI нужно.

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: C# Что такое дескриптор окна сообщения (HWnd)?
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*