2013-07-10 3 views
1

Как разместить слой загрузки маски и его сообщение в вертикальном и горизонтальном центре, пока изображение все еще отображается? Я хочу, чтобы мой контроллер справился с этим. Есть ли другое решение, чем маскирование после рендеринга?Маска положения при рендеринге

Что я пробовал:

oView.getEl().mask("Loading..."); это будет отображаться перед рендеринг выполняется. В верхней части панели отображается окно сообщения. Сообщение setloading - это то, что я хочу. Однако:

  • setLoading() не заперта на панели/зрения. Если вы перетаскиваете окно/панель, маску загрузки с сообщением остается в начале перетаскивания и не перемещается со своим окном/панелью. Погрузочное сообщение отлично работает setLoading('Waiting...');

  • mask() замки на панель/вид (да!). Но он отображается в верхней части панели, а не в центре.

+0

Просьба представить примеры кода того, что вы уже пробовали? – bottleboot

+0

См. Мое редактирование для более подробной информации. – Patrick

ответ

1

Я придумал решение. Я маскирую правильную часть. Но для панели просмотра не было высоты. Поэтому в настоящее время я должен установить высоту исправления для каждой панели, тогда сообщение маски будет центрировано.

0

Попробуйте это:

Ext.getBody().mask("Loading"); 
+0

Я хочу, чтобы конкретный вид был замаскирован, а не окно, а не тело. – Patrick

+0

То, что вы делаете, не обязательно неверно, но время вашей маски может возникнуть, когда размер контейнера, который вы маскируете, еще не рассчитан. Во всех случаях маска применяется к объекту Element, а не к компоненту. Поэтому просто убедитесь, что вы маскируете правильный элемент. – dbrin

+0

Я придумал решение. Я маскирую правильную часть. Но для панели просмотра не было высоты. Поэтому в настоящее время я должен установить высоту исправления для каждой панели, тогда сообщение маски будет центрировано ... – Patrick

Смежные вопросы