控件的easy问题(20分)

  • 主题发起人 主题发起人 charles2002
  • 开始时间 开始时间
C

charles2002

Unregistered / Unconfirmed
GUEST, unregistred user!
窗体内有在20个Edit控件用于显示一个数组的值,控件名依次为Edit1.Edit2...Edit20,
能否对这20个也用上数组来表示
 
静态是不行的了,在Delphi中不支持。动态的可以。
edit:array[0..19] of TEdit等。
 
能否有方便快捷一点的办法呀?
 
简单
首先在窗体上放一个Panel控件
然后把这20个EDIT控件放在Panel上(顺序)Edit控件最好命名为Edit01..Edit20
然后调用Panel的Controls属性就好了。[0..19]
使用例举
(panel1.Controls[1] as TEdit).Text:='asdf'
 
还有一个问题想请教
panel.controls的顺序是如何确定的?
 
在Form上点击右键,选择:View as Text
在窗体文件中出现的顺序就是Controls的顺序
如下例:
object Form1: TForm1
Left = 192
Top = 114
Width = 696
Height = 480
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object GroupBox1: TGroupBox //注意这里:GroupBox作为一个容器
Left = 24
Top = 24
Width = 505
Height = 321
Caption = 'GroupBox1'
TabOrder = 0
object Edit1: TEdit //第一个
Left = 32
Top = 32
Width = 89
Height = 21
TabOrder = 0
Text = 'Edit1'
end
object Edit2: TEdit //第二个
Left = 32
Top = 64
Width = 89
Height = 21
TabOrder = 1
Text = 'Edit2'
end
object Edit3: TEdit //第三个
Left = 32
Top = 96
Width = 89
Height = 21
TabOrder = 2
Text = 'Edit3'
end
object Edit4: TEdit
Left = 32
Top = 128
Width = 89
Height = 21
TabOrder = 3
Text = 'Edit4'
end
object Edit5: TEdit
Left = 32
Top = 160
Width = 89
Height = 21
TabOrder = 4
Text = 'Edit5'
end
object Edit6: TEdit
Left = 32
Top = 192
Width = 89
Height = 21
TabOrder = 5
Text = 'Edit6'
end
end
end



需要注意的是:如果你的容器里还有其他的控件(比如说是Label,也会加入到数组里)
你可以以Controls为关键字,在Delphi的帮助里看看
 
接受答案了.
 
后退
顶部