gpt4 book ai didi

delphi - TWebBrowser 如何在 IE8 上将插入符位置设置为 INPUT(text) 字段的末尾

转载 作者:行者123 更新时间:2023-12-03 15:26:01 24 4
gpt4 key购买 nike

我有一个通过 TWebBrowser 加载网页的应用程序,在此页面上我有一些 HTML 输入。我想要的是更改输入的值并将插入符号位置设置到末尾。

这就是我现在所拥有的:

procedure SetInputValue(Document : IHTMLDocument2; const ElementId, NewValue : String);

var Doc : IHTMLDocument3;
El : IHTMLElement;

begin
Doc := Document as IHTMLDocument3;
if Assigned(Doc) then
begin
El := Doc.getElementById(ElementId);
if Assigned(El) then
begin
if El.tagName = 'INPUT' then
(El as IHTMLInputElement).Value := NewValue;
(El as IHTMLInputElement).select;
end;
end;
end;

这段代码设置输入值并突出显示文本部分。我知道 IHTMLInputTextElement2 Interface但仅适用于 IE9

最佳答案

您应该使用IHTMLTxtRange

var Tr: IHTMLTxtRange;

Tr := (El as IHTMLInputElement).createTextRange;
Tr.collapse(true);
Tr.moveEnd('character', Length(NewValue));
Tr.moveStart('character', Length(NewValue));
Tr.select();

关于delphi - TWebBrowser 如何在 IE8 上将插入符位置设置为 INPUT(text) 字段的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9020687/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com