如何设定控件的创建顺序?

binbin 2001-05-02 02:28:00
在Form创建完成后,控件的创建顺序是怎样的?设计时如何指定?
我在控件事件中有相互引用的代码,必须保证要引用的控件已经创建。
...全文
99 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
wyb_star 2001-05-02
  • 打赏
  • 举报
回复
修改组件的TABS属性就可以拉
wolfboy 2001-05-02
  • 打赏
  • 举报
回复
重载基类函数,实例如下:

//在构造时还没有窗口句柄,还不能调用传递窗口句柄的方法
//需要重载基类的CreateWnd,当它返回时表明所有元件创建完毕
//否则会出现一个Control has no parent window的异常
void __fastcall TfrmMainForm::CreateWnd()
{
TForm::CreateWnd();

//这样就保证了控件一定已经创建完毕
}

记得给分啊
Wingsun 2001-05-02
  • 打赏
  • 举报
回复
在窗体上点击右键,选择Creation Order然后你就可以调整你的控件的创建顺序了。
「已注销」 2001-05-02
  • 打赏
  • 举报
回复
@_@
luhongjun 2001-05-02
  • 打赏
  • 举报
回复
你根本不用考虑这个问题,在Form创建之前他们已经都创建完成.
只是数据库有些特殊,他的使用不能放在"主窗体"的创建和OnShow()事件中.
binbin 2001-05-02
  • 打赏
  • 举报
回复
我是说,在程序启动时,控件的创建顺序。
比如说:
一个PageControl
设计时让第二个页面为Active
而在OnChange事件中读取数据库的内容
数据库用Table连接,设计时指定为Active。

在启动时,如Table在PageControl之前创建,则运行无问题。要是在PageControl之后创建,因为第二个页面为Active,所以程序一开始就触发了PageContrl的OnChange事件,此时读数据库就会出错。
因此需要设定Table在PageContrl之前创建。
dapha 2001-05-02
  • 打赏
  • 举报
回复
每个控件都有一个tab的属性.它就是在程序中按TAB键时跳转的顺序
xycleo 2001-05-02
  • 打赏
  • 举报
回复
什么意思???
同样的控件第一个就是1,第2个就是2阿..........

13,826

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧