Я хочу узнать, содержит ли пользовательский компонент TChromiumFMX текст, который пользователь выбрал, и, если это так, получить этот текст, без необходимости скопировать его в буфер обмена (ctrl-c).Как узнать, выбран ли текст в браузере, а затем получить его?
Чтобы улучшить ответ TLama в: Если вы не используете ShowMessage, анонимная процедура не всегда завершается до Button1Click происходит выход, следовательно, часто не приносит никаких результатов (или слишком поздно). Поэтому Done: = истина в последней строке процедуры могут быть проверены на, чтобы увидеть, если значение было загружено:
procedure TForm1.Button1Click(Sender: TObject);
var Done: boolean;
begin
Done := false;
Chromium1.Browser.GetFocusedFrame.VisitDomProc(
procedure(const document: ICefDomDocument)
begin
SelectedText := document.SelectionAsText;
Done := true
end
);
while not Done do Application.ProcessMessages
end;
Вау, это было быстро! Работает как шарм. Благодаря! – Domus
Добро пожаловать! – TLama
Я обновил свой вопрос, чтобы скрыть ответ, с небольшим улучшением. Не стесняйтесь вырезать его из вопроса и вставьте его в ответ. – Domus