To improve the positioning of the date field's menu, consider adjusting the Flash object's 'wmode' property to 'opaque' before moving the menu. By making this change, the menu should be able to display above the Flash object, depending on how it is embedded.
If you still wish to change the alignment of the menu manually, you can override the DateField instance's onTriggerClick method like this:
new Ext.form.DateField({
fieldLabel: 'Choose a date',
onTriggerClick: function() {
Ext.form.DateField.prototype.onTriggerClick.call(this);
this.menu.show(this.el, 'tl-br?');
}
});
With this adjustment, the menu will align the top-left corner with the bottom-right corner of the field. Refer to the Ext.Element.alignTo documentation for other options to pass as the second parameter of the show method.
Although calling the menu's show method twice may seem like a workaround, it is an effective solution compared to rewriting onTriggerClick to specify the position in the first call.