Не могу обновить панель инструментов extjs gridpanel - PullRequest
0 голосов
/ 24 февраля 2011

В extjs 2 у меня есть функция, которая возвращает один из двух массивов, который используется при загрузке страницы для

// onload
var grid = Ext.grid.GridPanel({
  ...
  tbar : getBar()
  ...
});

...

// later in a function
grid.tbar = getBar()
grid.getView().refresh()

Есть ли что-то еще, что мне нужно обновить?Или есть принципиальная разница в настройке tbar во время загрузки - tbar : getBar() - по сравнению с настройкой позже - grid.tbar = getBar()?

Ответы [ 2 ]

0 голосов
/ 28 февраля 2011

Поскольку doLayout недоступно в версии 2.2, я рекомендовал просто добавить все возможные кнопки / виджеты на панель инструментов и показать / скрыть их по отдельности. Кажется, это работает должным образом.

0 голосов
/ 24 февраля 2011

Если вы хотите получить панель инструментов вашей сетки, лучше использовать

grid.getTopToolbar();

, а затем для обновления макета панели инструментов необходимо использовать

grid.getTopToolbar().doLayout();

doLayout(); скажет ExtJS перерисовать компоновку панели инструментов с любыми изменениями, которые вы в нее внесли.

Надеюсь, это поможет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...