MFC: MessageBox во время перетаскивания

Мне нужно отобразить сообщение об ошибке при отклонении удаления в моем приложении.

Я пробовал это в OnDrop(), но затем исходное приложение зависало до тех пор, пока мое окно сообщения не было закрыто.

Как я могу это сделать?


person Agnel Kurian    schedule 08.09.2008    source источник


Ответы (3)


Вы всегда можете вызвать PostMessage с личным сообщением в диапазоне WM_APP и в обработчике сообщений показать ошибку.

Таким образом, вы показываете ошибку после того, как операция перетаскивания действительно закончилась, и нет опасности что-то испортить.

person Nir    schedule 08.09.2008

Ты прав. Но все данные, которые мне нужно сообщить в окне сообщения, находятся в файле OnDrop.

person Agnel Kurian    schedule 08.09.2008

Если вам нужны данные, вы можете скопировать их в OnDrop, сохранить во временном месте, а затем в сообщении диапазона WM_APP передать индекс данным во временном месте. Обработчик сообщения WM_APP может очистить временные данные после отображения окна сообщения.

person titanae    schedule 08.09.2008