出處 : http://gejinku.blog.163.com/blog/static/81623931200982405224165/
序言:
在Delphi眾多的優秀表格中,如cxGrid、InfoPower、Ehlib、NextGrid、DBGrid、TopGrid等,選擇了Ehlib作為項目開發的首選表格控件,其原因是Ehlib在功能、速度、穩定性、擴展性、複雜性等因素為最佳平衡點。用了近9年的Ehlib,多少也有一點親身感受,無論經驗多小,如果對讀者有微薄的經驗,能寫出來,就不是憾事!
- TRzTabSheet(Raize套件)之間切換,並沒有焦點轉換。如果兩個TRzTabSheet都有TDBGridEh,其中一個TDBGridEh(A表格)的Lookup下拉框在DropDown中,當你切換到另外一個TRzTabSheet時,你就會發現剛才A表格的Lookup下拉框不但並沒有消失,而且點擊還可以滾動,這不屬於B表格的LookupLookup下拉框還在顯示著,顯然是錯誤!解決問題很簡單,在TRzPageControl的On Change事件中,設置當前TRzTabSheet裡的TDBGridEh為SetFocus即可解決焦點轉換。
- 還有一個錯誤,當Lookup下拉框在DropDown中,如果你點擊了沒有焦點的按鈕(比如TToolbarButton)關閉窗口,會提示:找不到焦點的異常。跟踪代碼,在單元DBGridEh下的方法,
procedure TDBGridInplaceEdit.CloseUp (Accept: Boolean);
找到最後一句:Parent.SetFocus ;
改為:
if Parent.CanFocus then //先判斷父對像是否可以聚焦
Parent.SetFocus ;