delphi - 如何获取页面控件上的元素?

标签 delphi delphi-7

我正在使用 Delphi 7。

假设我的表单上有一个页面控件。此页面控件有两个或三个选项卡。每个选项卡上都有一些其他控件,例如标签、编辑等。例如,如何获取代码中编辑的文本属性?

最佳答案

使用它的 ControlCount 遍历标签页的控件和 Controls特性。

for i := 0 to TabSheet.ControlCount-1 do
begin
  if TabSheet.Controls[i] is TEdit then
    ShowMessage(TEdit(TabSheet.Controls[i]).Text);
end;

这将迭代标签表的所有直接子项。如果您需要更深入地迭代 child 的 child 等等,那么您需要递归解决方案。

如果您想在每个标签页中搜索,那么您也需要遍历它们。
for i := 0 to PageControl.PageCount-1 do
  TabSheet := PageControl.Pages[i];
  for j := 0 to TabSheet.ControlCount-1 do
  begin
    if TabSheet.Controls[j] is TEdit then
      ShowMessage(TEdit(TabSheet.Controls[j]).Text);
  end;

关于delphi - 如何获取页面控件上的元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15991880/

相关文章:

delphi - Delphi中垂直面板的自动布局

delphi - 如果我有 dll 源代码,是否可以从 Delphi 调试 C++builder dll?

delphi - Delphi 7中如何获取当前方法的名称?

delphi - 列表框过滤

delphi - FireMonkey 应用程序中未声明的标识符 'GetProcAddress'

Delphi 7 到 Delphi XE2 .res 文件问题

c++ - FStream 读取用 Delphi 的二进制编写器编写的二进制文件

delphi - 拦截TAB键并抑制它

delphi - Delphi中DBGrid的列高

Delphi - 使用 FormatFloat ('0.##' 时浮点舍入不一致,argValue)