请问怎样实现类似TComBoBox控件:下拉时弹出下拉窗体,而单击了下拉窗体之外的部份,下拉窗体自动关闭?
我要求的是下拉窗体中可能要自画,如要多列或其它,所以用TComBoBox不适应。请各位能不能说得具体些。本人对写Delphi控件不熟。谢谢。

解决方案 »

  1.   

    可以用一个deit控件,键盘或鼠标enter时显示一个panel,在鼠标单击时,panel没获得焦点就not visibel
      

  2.   

    方法一:
      1.使用障眼法:
         用一个面板固定放在Combobox下边,一般的时候它的Visible=False,Combobox下拉的时候再让它  
         Visible:=True;
         在面板的OnExit事件中写:
           Panel.Visible:=False;
      2.在Combobox的OnDrapDraw事件中:
         写你自己要做的动作
     
      

  3.   

    没搞懂你的意思!你是要改combobox控件,还是要干吗?
      

  4.   

    用组合控件效果看起来不好,
    最好就是像 SetFocus 说的一样,重新修改Combobox控件,使它的下拉窗口可支持各种样式,如表格,列表等等。