gpt4 book ai didi

delphi - TTreeView : How to change the text of item's inplace editor?

转载 作者:行者123 更新时间:2023-12-03 18:14:26 25 4
gpt4 key购买 nike

我有一个包含可编辑项目的 TreeView。当我在选择后按 F2 或单击任何项​​目时,就地编辑器出现。

如何在显示之前更改该编辑器中显示的文本?例如,我的树项的文本是 Point 1 (300, 450),但我希望我的就地编辑器仅显示 Point 1

我试图像那样捕捉 OnEditing 事件:

procedure TForm1.TreeViewEditing(Sender: TObject; Node: TTreeNode; 
var AllowEdit: Boolean);
begin
AllowEdit := True;
Node.Text := 'text to edit';
end;

然而,inplace editor 的文本并没有改变,树项目的文本只有在取消编辑后才会更新。如何正确执行此操作?

最佳答案

如果以下内容适合您,请尝试:

uses
Winapi.CommCtrl;

procedure TForm1.TreeView1Editing(Sender: TObject; Node: TTreeNode; var AllowEdit: Boolean);
var
EditHandle: THandle;
S: string;
begin
AllowEdit := True;
S := 'text to edit';
EditHandle := TreeView_GetEditControl((Sender as TTreeView).Handle);
SendMessage(EditHandle, WM_SETTEXT, 0, LParam(PChar(S)));
end;

关于delphi - TTreeView : How to change the text of item's inplace editor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13284658/

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