我实验了一下是正常的啊,一定是你把Edit的宽度减到小于0了,Edit当然会
消失了.

解决方案 »

  1.   

    上面我说错了
    要成比例缩小才行,否则,当Form1.Width<=150时Edit1当然要消失了
      

  2.   

    Edit.Width:=Form1.width*10/100;  // 比例,你自已试了
      

  3.   

    你先对FORM1.width做一个判断!
      

  4.   

    原因1:可能是你设置<=0
    原因2:可能是top or left移位到另一地方所以看不到,但最大化后可以看见.
    建议你用align,anchors属性来做最好,这两个属性就是当窗口改变来调整控件的位置,大小等.
      

  5.   

    不好意思,我没说清楚我是将ComboBox放到一个ToolBar时发现这问题的,麻烦大家再解释一下,谢谢
      

  6.   

    alinment 改成 CLIENT 不就行了?????
      

  7.   

    你也不试试就瞎说,ComboBox组件哪来的Align属性(我知道你指的是这个)?
      

  8.   

    to wzs
    原因2不成立。单纯改变WIDTH属性对TOP、LEFT属性无影响,只是因为这时Edit1.Width<0to lliihhaaoo
    不明白你的意思,"动态调整Edit控件的长度"跟"将ComboBox放到一个ToolBar"有什么关系?
      

  9.   

    我的意思是说问题标题应该改成:“动态调整一个放到ToolBar里的ComboBox的长度,出错!?”
      

  10.   

    我保证Form1.width远大于ComboBox1.Width,此时用鼠标将窗口略微缩小一点,ComboBox1就不见了!!!
      

  11.   

    没有的事,我才试过,。你的DELPHI有问题,!!!
      

  12.   

    我写了一个
    form1.width:=form1.width-5;
    发现了你的问题,只要你的FORM不能显示ComboBox1的全部时,也就是压上一点,
    ComboBox1就不见了!!! 你回去再改改width吧,
      

  13.   

    知道了,是我的Delphi的Bug.结束。csdn常给不了分,好烦。