2014-01-22 11 views
0

У меня есть стандартный экземпляр qx.ui.tabview.TabView с некоторыми страницами, на которых включена кнопка закрытия. Я хотел бы перехватить щелчок на кнопке закрытия, чтобы отобразить диалоговое окно подтверждения, но я не могу понять, как сделать это способом qooxdoo.Как правильно перехватить нажмите кнопку закрытия на странице табуляции?

В качестве обходного решения я обнаружил, что могу перезаписать tabview._onPageClose(), но так как я не подклассифицирую TabView, это кажется взломом.

Может кто-нибудь дать мне подсказку?

ответ

0

Подкласс - это путь, потому что переопределение метода без подкласса - это взлом, как вы уже сказали.

0

Я не пробовал, но вы также можете подключить обработчик событий к событию закрытия вкладки и попытаться отменить распространение в фазе барботажа, показывая свое подтверждение. Затем, после ОК в диалоговом окне подтверждения, просто закройте вкладку программно.

Кроме того, страница tabview предоставляет свои дочерние элементы управления, а TabButton предоставляет свои дочерние элементы управления - кнопка закрытия между ними. Вы можете попробовать добавить слушателя непосредственно к этой кнопке, в которой вы отмените распространение (Event.stop()) и отобразите свое подтверждение.