说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

一个弱智的问题。

编辑:说三道四文库 发布时间:2018-05-21 03:20
HTML文档下载 WORD文档下载 PDF文档下载
有些控件既有Components这个属性。对应的有ComponentsCount这个。
又有Controls这个属性。对应的有ControlCount这个属性。
还有Object这个属性。。对应的
大虾们能说说这几个到底有什么区别么。。
比如既有insertcomponet.又有insertcontrol.
还有AddObject..有什么区别么。
比如既有insertcomponet.又有insertcontrol.
还有AddObject..有什么区别么。
太可惜了,我要去踢球了。没时间了!
这样的代码解释你明白么:
void MoveToModule(TForm *Source, TDataModule *Dest)
{
  int I;
  TComponent *Temp;
  for (I = Source->ComponentCount - 1; I >= 0; I--)
  {
    Temp = Source->Components[I];
    // only move components that are not controls
    if (dynamic_cast<TControl *>(Temp) == NULL)
    {
      Source->RemoveComponent(Temp);
      Dest->InsertComponent(Temp);
    }
  }
}
还有这样的:
void __fastcall TForm1::UpDown1Click(TObject *Sender, TUDBtnType Button)
{
  int I;
  TControl *ChildControl;
  for (I = 0; I < GroupBox1->ControlCount; I++)
  {
    ChildControl = GroupBox1->Controls[I];
    if (Button == btNext) 
      ChildControl->Top = ChildControl->Top + 15;
    else
      ChildControl->Top = ChildControl->Top - 15;
  }
}
再看看继承关系:
TObject

TPersistent

TComponent

TControl

TWinControl

TCustomEdit

(TEdit的)
我想你首先应该明白Component和Control不是一回事儿。Components的概念要比Control广。在BCB中,Control一般是指可以显示在Form上的组件,比如Edit控件之类。而Component不仅包括可视的部件,也包括那些不可视的部件,比如Timer控件。所有的Control必然使Component,但是并非所有的Component都是Control。而Object的概念就更加广了,不管是Component还是Control,都是Object;但是并非所有的Object都是Component或者Control。理解了这三个术语的概念之后,你的问题也就有答案了吧?
呵呵,接了个电话,就被RH抢先一步回答好啦。
什么意思啊。是继承关系不一样么。
还有你的MoveToModule和UpDown1Click是什么事件呢。
…………
kingfox(小狐仙):
可是为什么GroupBox1-》ComponentsCount=0;
而GroupBox1-》ControlCount=3;(有三个CHECKBOX)呢。
不是Components的范围比Control大么。
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘