Ehlib:修正表格的Lookup下拉框的焦點小BUG

11 篇文章 0 订阅
3 篇文章 0 订阅

出處 : http://gejinku.blog.163.com/blog/static/81623931200982405224165/

序言:

       在Delphi眾多的優秀表格中,如cxGrid、InfoPower、Ehlib、NextGrid、DBGrid、TopGrid等,選擇了Ehlib作為項目開發的首選表格控件,其原因是Ehlib在功能、速度、穩定性、擴展性、複雜性等因素為最佳平衡點。用了近9年的Ehlib,多少也有一點親身感受,無論經驗多小,如果對讀者有微薄的經驗,能寫出來,就不是憾事!

  1. TRzTabSheet(Raize套件)之間切換,並沒有焦點轉換。如果兩個TRzTabSheet都有TDBGridEh,其中一個TDBGridEh(A表格)的Lookup下拉框在DropDown中,當你切換到另外一個TRzTabSheet時,你就會發現剛才A表格的Lookup下拉框不但並沒有消失,而且點擊還可以滾動,這不屬於B表格的LookupLookup下拉框還在顯示著,顯然是錯誤!解決問題很簡單,在TRzPageControl的On Change事件中,設置當前TRzTabSheet裡的TDBGridEh為SetFocus即可解決焦點轉換。
  2. 還有一個錯誤,當Lookup下拉框在DropDown中,如果你點擊了沒有焦點的按鈕(比如TToolbarButton)關閉窗口,會提示:找不到焦點的異常。跟踪代碼,在單元DBGridEh下的方法,

    procedure TDBGridInplaceEdit.CloseUp (Accept: Boolean);

    找到最後一句:Parent.SetFocus ;

    改為:

    if Parent.CanFocus then //先判斷父對像是否可以聚焦

        Parent.SetFocus ;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值