【发布时间】:2010-09-25 05:10:11
【问题描述】:
我正在尝试编写一个 TCustomDBGrid 后代,它的设计感觉就像一个 TListBox。我要更改的一件事是 Options 属性的默认值。 TCustomDBGrid 将 Options 定义为:
property Options: TDBGridOptions read FOptions write SetOptions
default [dgEditing, dgTitles, dgIndicator, dgColumnResize, dgColLines,
dgRowLines, dgTabs, dgConfirmDelete, dgCancelOnExit];
试图在我的课堂上覆盖它
property Options: TDBGridOptions default
[dgTitles, dgTabs, dgRowSelect, dgAlwaysShowSelection, dgCancelOnExit];
不起作用;编译器在类型之后需要 read 或 write,而不是 default。问题是,FOptions 和 SetOptions 在 TCustomDBGrid 中都被定义为私有的,不受保护的。
我是否必须编写自己的 get 和 set 方法来调用“inherited Options”,还是有更简单的方法来做到这一点?
【问题讨论】:
-
我也很好奇。我在 Borland 的 C++ Builder 中工作得很好。 __property DefaultRowHeight = { default = 18 };
标签: delphi properties default-value