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;
вместо.