- rcarlosdasilva
- 等级: 初级会员

- 性别:

- 文章: 11
- 积分: 30
- 来自: 青岛

|
刚刚开始学Ext,用的1.1.1
想做个小东西,界面可能想的有些复杂,现在出现个问题,就是在页面中有3个borderLayout对象,现在只有一个对象content_layout中的north那个方向的布局使用了titlebar: true,collapsible: true,animate: true,useShim:true,cmargins: {top:2,bottom:2,right:2,left:2}
其余的titlebar和collapsible都没有显示。
现在我想让这唯一一个显示出来的collapsible在他收缩回去以后,在上面显示一幅图片,就像Ext自带的doc中左侧的documentation explorer收缩回去后显示的那幅图片一样的效果。
我现在的代码是显示不出来了,不知道是不是由于布局中,content_layout是被包围在最中间的一个布局造成的,还是我写的代码有问题,说是用.x-layout-collapsed-north 给设定一下图片的路径就好了,没有用,有没有会的啊,帮我看看。
顺便把代码贴出来:
index.jsp ::
java 代码
- <%@ page language="java" pageEncoding="gb2312"%>
-
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
-
- <title>论坛</title>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
- <meta http-equiv="description" content="This is my page">
- <link rel="stylesheet" type="text/css" href="src/resources/css/ext-all.css">
- <!-- <link rel="stylesheet" type="text/css" href="src/resources/css/xtheme-vista.css"/>
- <link rel="stylesheet" type="text/css" href="src/resources/css/layout.css"/> -->
- <link rel="stylesheet" type="text/css" href="src/mycss/main_style.css">
- <script type="text/javascript" src="src/adapter/ext/ext-base.js"></script>
- <script type="text/javascript" src="src/ext-all.js"></script>
- <script type="text/javascript" src="src/ext-all-debug.js"></script>
- <script type="text/javascript" src="src/myjs/main_script.js"></script>
- <!-- style type="text/stylesheet">
- .x-layout-collapsed-north {
- background-image: url(images/collapse-bg.gif);
- background-repeat: no-repeat;
- background-position: center;
- }
- </style> -->
- </head>
-
- <body>
- <div id="bg_border_l">
- <table cellpadding="0" cellspacing="0" width="100%" height="100%" bgcolor="#284c81">
- <tr><td></td></tr>
- </table>
- </div>
- <div id ="container">
- <div id="bbs_log_area">
- <table cellpadding="0" cellspacing="0" width="100%" height="100%" background="images/title_bg.gif">
- <tr><td><img src="images/log_img.gif" /></td></tr>
- </table>
- </div>
- <div id="content">
- <div id="user_control_area" class="x-layout-inactive-content">
- <iframe frameborder="0" scrolling="hidden" marginheight="0" marginwidth="0" id="login_frame" height="100%" width="100%" src="user/login.jsp" scrolling="no"></iframe>
- </div>
- <div id="bbs_content_area" class="x-layout-inactive-content">正文</div>
- </div>
- </div>
- <div id="bg_border_r">
- <table cellpadding="0" cellspacing="0" width="100%" height="100%" bgcolor="#284c81">
- <tr><td></td></tr>
- </table>
- </div>
- </body>
- </html>
- Area_onload = function() {
- var title_layout;
- var main_layout;
- var border_layout;
-
- return {
- init : function() {
- border_layout = new Ext.BorderLayout(document.body, {
- west : {
- split:false,
- initialSize: 30,
- titlebar: false
- },
- east : {
- split:false,
- initialSize: 30,
- titlebar: false
- },
- center : {
- split:false,
- titlebar: false,
- autoScroll:true
- }
- });
- border_layout.beginUpdate();
- border_layout.add('west',new Ext.ContentPanel('bg_border_l',null));
- border_layout.add('east',new Ext.ContentPanel('bg_border_r',null));
- border_layout.add('center',new Ext.ContentPanel('container',null));
- border_layout.endUpdate();
-
-
- main_layout = new Ext.BorderLayout('container', {
- north : {
- split:false,
- initialSize: 33,
- titlebar: false
- },
- center : {
- titlebar: false,
- autoScroll:true
- }
- });
- main_layout.beginUpdate();
- main_layout.add('north',new Ext.ContentPanel('bbs_log_area',null));
- main_layout.add('center',new Ext.ContentPanel('content',null));
- main_layout.endUpdate();
-
-
- var title = Ext.get('content');
- content_layout = new Ext.BorderLayout(title, {
- north : {
- split: false,
- initialSize: 150,
- titlebar: true,
- collapsible: true,
- autoScroll:false,
- animate: true,
- useShim:true,
- cmargins: {top:2,bottom:2,right:2,left:2}
- },
- center : {
- titlebar: false,
- initialSize: 1000,
- autoScroll:true
- }
- });
- content_layout.beginUpdate();
- content_layout.add('north',new Ext.ContentPanel('user_control_area',{title: '用户控制面板', fitToFrame:true}));
- content_layout.add('center',new Ext.ContentPanel('bbs_content_area',null));
- content_layout.endUpdate();
- }
- }
- }();
-
- Ext.EventManager.onDocumentReady(Area_onload.init,Area_onload,true);
有会的帮忙看一下,谢谢!!
main_script.js ::
声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
| 返回顶楼 |
|
|
- yeaha
- 等级: 初级会员

- 性别:

- 文章: 34
- 积分: 40
- 来自: 重庆

|
不要建立那么多BorderLayout,下面嵌套的layout用NestedLayoutPanel试试
|
| 返回顶楼 |
|
|
- rcarlosdasilva
- 等级: 初级会员

- 性别:

- 文章: 11
- 积分: 30
- 来自: 青岛

|
如果有多个布局,想要指定某一个布局在收起的时候,上面显示一张图片怎么搞啊!
|
| 返回顶楼 |
|
|
- fangzhouxing
- 等级:


- 性别:

- 文章: 279
- 积分: 348
- 来自: 上海

|
研究一下Simple RSS Feed Viewer的例子中,它右侧的Panel收缩时,就能显示纵向的标题,好像使用图片实现的。在extjs.com论坛上有人提问过,但我找不到那个帖子了。
|
| 返回顶楼 |
|
|
- rcarlosdasilva
- 等级: 初级会员

- 性别:

- 文章: 11
- 积分: 30
- 来自: 青岛

|
我也看过这种类似的例子,坛子上也有说只要在追加上一个样式就行了
.x-layout-collapsed-north {
background-image: url(images/collapse-bg.gif);
background-repeat: no-repeat;
background-position: center;
}
看的例子上都是一个布局,我把这行加上了,不知道是不是因为布局太多的原因,所以我没有看到效果
|
| 返回顶楼 |
|
|