上节讲到,地图加载。

但我们可以发现,当没有页面布局的情况下,<OBJECT>控件,没有占满整个屏幕,这里我们就要用到Extjs的功能了。

这节要讲的是用Extjs为<OBJECT>控件布局,让它适应任何版本的IE浏览器(因为SkyLine目前只支持IE)。

1.将Extjs包引进项目。

-这里需要注意,网上下载的Extjs5.0包里,包含有很多例子之类的,为了保证项目尽可能的干净,我们只去一小部分。

2.在项目中应用

-我们在上一节,将OBJECT空间直接写在Index.cshtml里,在这里,我们需要修改一下,

我们要用Extjs里的ViewPort渲染到Index.cshtml里。

@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>三维地图</title>
<META http-equiv="X-UA-Compatible" content="IE=8" > </META>@*这样IE8-9就可以兼容了,IE10暂时没测试*@
<link href="~/Scripts/ext-5.0.0/packages/ext-theme-crisp/build/resources/ext-theme-crisp-all.css" rel="stylesheet" />
<script src="~/Scripts/ext-5.0.0/ext-all.js"></script>
<script type="text/javascript">
Ext.onReady(function () {
Ext.define('HJ.view.Main', {
extend: 'Ext.panel.Panel',
layout: 'border',
alias: 'widget.main',
initComponent: function () { var centerPanel = Ext.create('Ext.panel.Panel', {
region: 'center',
margins: '0 0 0 0',
paddings: '0 0 0 0',
layout: 'fit',
style: {
textAlign: 'right'
},
items: {
html: '<object id="TerraExplorerX" height="100%" width="100%" classid="CLSID:3a4f9192-65a8-11d5-85c1-0001023952c1"></object>'
}
}); this.items = [centerPanel]; this.callParent(arguments);
}
}); Ext.create('Ext.container.Viewport', {
layout: 'border',
autoload: true,
items: [
{
xtype: 'main', region: 'center'
}
]
});
});
</script>
</head>
<body>
</body>
</html>

 3.在没有加载地图的时候,我们看一下效果。

-占满了整个屏幕^^。

4.结束语

-有些人会说,这个控件布局何必这么麻烦,检测下IE高度,加载控件时将高度附上去就OK了,

这里我想说的是,既然要判断那就需要IE版本,或者以后SkyLine开发Google或者火狐浏览器时,还得判断其他浏览器,

这里Extjs是我找到比较省事儿的方法。

[地图SkyLine二次开发]框架(2)的更多相关文章

  1. [地图SkyLine二次开发]框架(1)

    项目介绍: 项目是三维地理信息系统的开发,框架MVC4.0 + EF5.0 + Extjs4.2 + SkyLine + Arcgis,是对SkyLine的二次开发. 项目快结束了,先给大家看一眼效果 ...

  2. [地图SkyLine二次开发]框架(5)完结篇

    上节讲到,将菜单悬浮到地图上面,而且任何操作都不会让地图把菜单盖住. 这节带大家,具体开发一个简单的功能,来了进一步了解,这个框架. 1.想菜单中添加按钮 -上节定义的mainLayout.js文件里 ...

  3. [地图SkyLine二次开发]框架(4)

    继续上一节... 1.Extjs5.0版Menu. -将Extjs包引入MenuPage.html页. 2.前段用Extjs的MVC框架 -在根目录下创建app文件夹,文件夹下分别创建controll ...

  4. [地图SkyLine二次开发]框架(3)

    上节将显示我们地图的OBJECT控件,布了一下局,但地图没有进行加载. 这是因为我们要在另一个页面,对OBJECT控件进行地图加载,并且得到该控件的sgworld,以便对其进行我们想要的开发. 这里, ...

  5. [地图SkyLine二次开发]关于IE内存限制问题(1G)

    相信很多人也遇到过同样的问题,地图加载中,IE占用的内存一直增加,到了1G多一些的时候,IE就崩溃了. 在网上查阅了一番,有很多结果,下面归纳一下: a).64bit的IE最多可达到4G的内存,但Sk ...

  6. Skyline 7 版本TerraExplorer Pro二次开发快速入门

    年底了,给大家整理了一下Skyline 7版本的二次开发学习初级入门教程,献给那些喜欢学习的年轻朋友. 我这整理的是Web控件版本的开发示例,里面页面代码保存成html,都可以直接运行的. 测试使用的 ...

  7. [连载]《C#通讯(串口和网络)框架的设计与实现》- 12.二次开发及应用

    目       录 第十二章     二次开发及应用... 2 12.1        项目配制... 3 12.2        引用相关组件... 4 12.3        构建主程序... 5 ...

  8. php后台开发(二)Laravel框架

    php后台开发(二)Laravel框架 为了提高后台的开发效率,往往需要选择一套适合自己的开发框架,因此,选择了功能比较完善的Laravel框架,仔细学来,感觉和Python语言的框架Django非常 ...

  9. Silverlight开源框架SL提供便捷的二次开发银光框架

    Silverlight开发框架SilverFrame欢迎咨询 基于Silverlight4.0开发,兼容Silverlight 5.0,SQLServer2005数据库.WCF: 本框架有清爽的前端界 ...

随机推荐

  1. Win10 HOSTS锁定 无法提权 修改 解决办法 100%有效

    折腾了N久 各种百度,Google 什么复制粘贴法,什么管理员CMD法 什么修改权限法  统统没用.... 其实只需要             WINPE 进入老毛桃, 复制粘贴. 重启电脑 直接搞定 ...

  2. web 安全的前期准备哦

    学习web安全  需要的软件  和 基础 基础会在以后发出来  软件  在网上都可以下 首先   你要有一款虚拟机软件 虚拟系统通过生成现有操作系统的全新虚拟镜像,它具有真实windows系统完全一样 ...

  3. sdk、jdk、jre、jvm、jdt、cdt分别都是什么东西

    1.sdk是什么 sdk,全称是 software development kit 中文译为软件开发工具包.kit 在英文中有工具箱,设备包,成套工具的意思. 从名字就可以看出sdk作为一个工具箱,其 ...

  4. 转载 wpf使用经验

    转载自 胡庆访[ http://zgynhqf.cnblogs.com/ ] WPF 是一个界面层框架技术,要对 WPF 技术达到熟练运用的程度,需要同时拥有开发和设计两方面的知识.而我作为一名开发人 ...

  5. FRM-40400:事务完成:已应用和保存X条记录"消息框不显示处理方法

    oldmesl := :system.message_level; :system.message_level :;--不显示长度超过25的信息 do_key('COMMIT_FORM'); :sys ...

  6. .net之工作流工程展示及代码分享(四)主控制类

    现在应该讲主控制类了,为了不把系统弄得太复杂,所以就用一个类作为主要控制类(服务类),作为前端.后端.业务逻辑的控制类. WorkflowService类的类图如下: 该类的构造函数: public ...

  7. 关于缺少nvToolsExt64_1.lib时的PhysX的处理

    我本人之所以缺少这个文件是因为我的PhysX如果你的PhysX是从UE4源代码中提取的,那么可能会出现如下错误,提示找不到nvToolsExt64_1.lib(本机是64bit的操作系统) 那就执行u ...

  8. 刷新各ifream当前页,下拉项改变触发事件js,给选中项加背景色js

    <script type="text/javascript" language="javascript"> //刷新框架各页面 function r ...

  9. Hdu 5493 合肥网络赛 1010 Queue

    在线求第k大,第一次用二分+树状数组写...比赛的时候分治啊,splay啊,主席树啊换来换去,然而以前为什么不知道可以这么写... #include <iostream> #include ...

  10. Selenium Chrome浏览器的启动以及proxy设置

    Selenium Chrome浏览器的启动以及proxy设置   虽然WebDriver对Firefox的支持最好,之前写的脚本也都在Firefox浏览器运行,但最近项目做了整合,发现新整合的功能不太 ...