我正在使用Delphi 7。
假设我的表单上有页面控件。此页面控件有两个或三个选项卡。每个标签都有一些其他控件,如标签,编辑等。例如,如何获取代码中的编辑文本属性?
答案 0 :(得分:11)
使用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;
这将遍历标签页的所有直接子项。如果你需要深入研究孩子的孩子等等,那么你需要一个递归的解决方案。
如果你想在每个标签页中搜索,那么你也需要迭代它们。
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;
答案 1 :(得分:4)
您仍然可以直接访问TEdit
Edit1.Text := 'My Edit box on a Tab';