delphi 如何强制下拉组合下拉列表  
官方Delphi 学习QQ群: 682628230(三千人)
频道

delphi 如何强制下拉组合下拉列表


这是通过使用Windows消息CB_SHOWDROPDOWN来完成的。

我建议您在消息下的WinAPI帮助中查看其他操作方法。

在Windows中进行消息传递的好处是,所有调用均通过Windows API SendMessage例程进行处理,该例程需要四个参数:

SendMessage函数的参数

窗口句柄(可以是对象句柄)

消息-指定要发送的消息(在我们的示例中为CB_SHOWDROPDOWN)

wParam,16位消息相关参数

lParam,一个与消息有关的32位参数(有关wParam和lParam中内容的详细信息,请参见WinHelp)

其要旨是Windows消息是以非常标准的方式执行的,因此,如果您没有做太多事情,我鼓励您研究在代码中使用它们的方法。

若要使组合框列表在您输入时自动下拉,请将以下代码放入OnEnter事件中:


procedure TForm1.ComboBox1Enter(Sender: TObject);

begin

  SendMessage(ComboBox1.handle, CB_SHOWDROPDOWN, Integer(True), 0);

end;

同样,可以在退出时通过将以下代码放入组合框的OnExit事件来关闭下拉菜单:


procedure TForm1.ComboBox1Exit(Sender: TObject);

begin

  SendMessage(ComboBox1.handle, CB_SHOWDROPDOWN, Integer(False), 0);

end;


Intuit的家伙可能就是用Quicken做到的。所以去吧!



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.034497022628784 seconds