TAcroPDF Фокусировка Проблема

Я хочу перебрать папку с PDF-файлами, содержащими изображения ваучеров. Я просматриваю каждый файл в компоненте TAcroPDF. Пользователи могут увидеть сумму, указанную в ваучере, и ввести эту сумму в текстовое поле. При нажатии клавиши ВВОД отображается следующий ваучер, и я хочу автоматически переориентировать текстовое поле. По какой-то причине форма не передает фокус компоненту TEdit, хотя ActiveControl является edtAmount.

Я попытался edtAmout.SerFocus после функции ShowImage. Я пробовал PostMessage и edtAnount.Perform. У меня wveb есть обработчик OnIdle с этим кодом

  if not edtAmount.Focused then
    PostMessage(Handle, um_AmountFocus,0,0);

Все хадлеры обрабатываются. Чего мне не хватает, так это того, почему TAcroPDF, кажется, захватывает фокус.

Я могу вручную дважды щелкнуть в TEdit, но мне нужно менее интуитивно понятное решение

2 ответа

Извините за задержку ответа. Одна вещь, которую я нашел, которая работает, это использовать TTimer; включите Timer после вызова LoadFile, и в событии Timer установите фокус на свой edtAmount. Задержка таймера в 500 миллисекунд, кажется, работает в моем случае. Отключить таймер после вызова SetFocus.

Использование метода LoadFile вызвало проблемы с фокусом

  AcroPDF1.LoadFile(PDFFileName); //was the source of the focusing problem

использование

 AcroPDF1.src:=PDFFileName;

вместо.

Другие вопросы по тегам