[英]Devexpress VCL-Grid Excel filtering mode
Devexpress VCL 從 18.2.5 升級到 19.1.2 后,為了使用最新的功能,特別是新的網格 Excel 過濾模式,可惜編譯器沒有識別一些常量和屬性,比如 dxDefaultFilterPopupWindowMode 常量和 .Filtering DBGridViews 的 .ColumnPopupMode 屬性。 盡管將 dxFilterPopupWindow 放在 uses 子句中。
有什么幫助嗎?
今天,我從 18.1.2 版升級到 DevExpress VCL 庫的最新版本,即 2020 年 1 月 22 日的 19.2.4 版,並改編了現有的最小 cxGrid 項目以使用新的 Excel 樣式過濾。 它編譯和執行沒有任何錯誤。
這是我所做的:
1 我現有的 Devex 安裝文件夾(您告訴安裝程序使用的文件夾)是D:\\DevExpress VCL
2 我將D:\\DevExpress VCL
重命名為D:\\DevExpress VCL Prev
3 我運行了 19.2.4 安裝程序,將D:\\DevExpress VCL
作為要使用的安裝文件夾。
您提到編譯器抱怨標識符dxDefaultFilterPopupWindowMode
和ColumnPopupMode
。 你說“盡管將 dxFilterPopupWindow 放在 uses 子句中。
dxDefaultFilterPopupWindowMode
在 dxFilterPopUpWindow.Pas 的第 50 行聲明
const
dxDefaultFilterPopupWindowMode: TdxFilterPopupWindowMode = fpmClassic;
ColumnPopupMode
在 cxGridTableView.Pas 的第 3361 行聲明:
TcxGridTableFiltering = class(TcxCustomGridTableFiltering)
[...]
published
[...]
property ColumnPopupMode: TdxFilterPopupWindowMode read GetColumnPopupMode write SetColumnPopupMode default fpmDefault;
end;
我強烈建議您按照我上面描述的方式安裝 19.2.4 版,然后檢查您的項目的搜索路徑是否包含 Devex 源的路徑。 當然,如果你按照我描述的方法,項目搜索路徑應該不需要改變,如果之前編譯過的話。
如果編譯器仍然抱怨找不到dxDefaultFilterPopupWindowMode
和ColumnPopupMode
,那么假設您沒有編譯您的項目以使用運行時包,我能想到的唯一可能原因是編譯器正在尋找早期版本的 dxFilterPopUpWindow.Dcu和 cxGridTableView.Dcu 以某種方式具有比相應的 .PAS 文件晚的日期戳 - 在這種情況下,我會從我的系統中刪除 Devex Dcu 的所有實例,然后再試一次。 一種確保編譯器正在編譯您認為的 Devex 源文件版本的方法,因此編輯 cxGridTableView.Pas 以在文件的最頂部添加“編譯器停止符”,例如感嘆號:如果編譯器在嘗試編譯您的項目時不會抱怨這個,您會知道它正在查找並使用 cxGridTableView .Pas 文件或 .Dcu 的另一個版本。
最后,出現這個錯誤是因為我在Delphi庫路徑中留下了以前版本的路徑,並且在新版本的路徑之前。 所以,我刪除了第一個,保留了新的。 瞧,現在一切都運行良好:):):)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.