我在我的应用程序中使用带有 ExtJs3.4 的 geoExt!我创建了一个 mapPanel 并使用以下代码将 openlayers 地图添加到其中。
var mapPanel = new GeoExt.MapPanel({
renderTo: 'gxmap',
height: 500,
width: 800,
map: map,
title: 'Map'
});
之后我创建了 extjs 切换按钮
var button = new Ext.Button({
text: 'Measure Things',
enableToggle: true,
handler: function(toggled){
if (toggled) {
polygon.activate();
} else {
polygon.deactivate();
}
}
});
当我想将此按钮添加到地图面板时,我得到 mapPanel 的 topPanel,之后当我想使用 topPanel 功能时,这些功能不起作用!
mapPanel.getTopToolbar().addButton(button);
或以下代码
topToolbar = mapPanel.getTopToolbar();
topToolbar.addButton(button);
当我看到 chrome 开发人员工具时,我看到 addButton 功能或面板 topToolbar 的其他功能出现此错误! 错误:
uncaught typeError: cannot call method 'addButton' of undefined
为什么我不能使用 topToolbar 功能?使用添加按钮映射
的 geoext 教程链接mapPanel.getTToolbar().addButton(button);