VC++, MFC

Куплена такая редкая вещица, как сканер формата A5. И вот, не нашлось подходящей утилиты, чтобы сканировать что-либо и просто писать в jpg или png с минимумом телодвижений. Хотелось только, чтобы пользователь мог задавать часть имени результирующего файла. Поскольку к сканеру прилагался пример работы с ним на VC++, решил заняться самодеятельностью в стиле ретро. Оказывается, под MFC нет нормального способа сделать что-либо, когда диалог отображен и готов реагировать на сообщения. В моем случае нужно было показать результат сканирования и, пока человек начинает соображать, вернуть лампу сканера в исходное положение.

Конечно, вызов можно вставить в OnPaint(), но в этот момент другие контролы еще не нарисованы. Выходов два:
1) сделать таймер с маленькой паузой;
2) послать сообщение типа WM_APP+что-нибудь из диалога самому себе посредством PostMessage.

Где извращенности больше, определить затрудняюсь. Реализован второй вариант, причем сообщение отсылается из того же OnPaint().

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *