В качестве комментария вне вашего прямого вопроса, «DateTime» - ужасное название для подкласса Panel. Вы хотите, чтобы кто-нибудь, кто придет позже, знал, с каким классом он имеет дело - «DateTimeField» будет намного лучше, в зависимости от того, как вы его используете (хотя это подразумевает подкласс Field
, как описано ниже ...) ,
Однако обратите внимание, что еще одна потенциальная проблема, поскольку вы намереваетесь использовать эту панель в качестве поля, заключается в том, что FormPanel ожидает, что ее поля формы будут поддерживать интерфейс Ext.form.Field
, чего не будет в вашем «поле» (т. Е. Вы не сможете добавить свой объект DateTime в конфигурацию items
формы). Поэтому, если ваша цель - создать действительно многократно используемый компонент, который можно рассматривать как поле, вам нужно добавить методы типа getValue
, setValue
, markInvalid
и т. Д., Которые внутренне взаимодействуют с составляющими полями. , Это не тривиальная задача, чтобы все работало гладко.
(Не уверен, что это ваша цель, но подумал, что упомяну об этом, поскольку сам пошел по этому пути).