程序有一个Coolbar,动态的创建了若干TWinControl的子类,设置这些控件的Parent为Coolbar,这样这些控件就加入到了Coolbar。
我的问题是:如何设置这些控件的位置(Top、Left)?

解决方案 »

  1.   

    在Google,msdn中找了半天,都没有找到答案,
    msdn中关于Rebar的API也没有找到相关信息,郁闷,
      

  2.   

    Coolbar控件里控件好像不能指定TOP吧。
      

  3.   

    指定了也不生效吧,指定TOP、LEFT那可以用:
    TWinControl(FindComponent('CPTNAME')).Top := Y;
    TWinControl(FindComponent('CPTNAME')).Left := X;
      

  4.   

    楼上的,我可以找到这些控件,也可以设置这些控件的Top,Left,
    但,这样似乎没有用阿?我设置某一个控件的Left := 200;但这个控件Left还是=0
      

  5.   

    或者我的问题改成:如何让Coolbar里的两个控件在同一行上面阿?
      

  6.   

    呵呵。。你自己也知道设置Coolbar里这些控件的Top,Left这样没有用。除非自己改装Coolbar控件。
      

  7.   

    直接在CoolBar上放控件,它会把控件放到一个CoolBand里,CoolBand默认是每行一个的.
    可以设置第二个CoolBand.Break = True,然后设置第一个CoolBand.Width,就能控制一行两个更好的方法是在CoolBar上放ToolBar,然后在ToolBar上放控件,这样就能用控件的SetBounds方法设置位置,不过它还是会自动左排列,不能设置为任意位置,要任意位置的话,ToolBar里放Panel,再在Panel里放控件
      

  8.   

    无头冤案,换成ControlBar,结了
      

  9.   

    为什么要调整ControlBar的的组件的位置?