【问题标题】:Adding a Panel into a Panel将面板添加到面板中
【发布时间】:2012-07-04 18:13:07
【问题描述】:

我在 app.js 中设置了 card 布局。这是代码;

...
launch: function() {
        var vp = Ext.create('Ext.container.Viewport', {
            layout: 'card',
            items: [
            {
                xtype: 'doctor'
            },
            {
                xtype:'nurse'
            }
            ]
        });
    }, ...

并且,将加载的第一个视图。这是代码;

Ext.define('RoyProject.view.user.Doctor', {
    extend:'Ext.form.Panel',
    alias : 'widget.doctor',
    id:'docform', 
    defaultType: 'textfield',
    items: [{       
        fieldLabel: 'Name',
        name: 'name'
        }],
    buttons: [, {
        text: 'Send',
        action:'send'        
    }]
});

由于我在 app.js 中使用card 布局,所有第一个视图都被拉伸了,并占据了整个屏幕。因此,为了摆脱这种情况,我想添加一个Panel 并在其中添加一个Panel 以添加我的视图(即RoyProject.view.user.Doctor)。有人可以帮我将此视图添加到面板中,而无需更改代码的逻辑:)

【问题讨论】:

    标签: extjs extjs4 extjs-mvc extjs4.1


    【解决方案1】:
    launch: function() {
            var vp = Ext.create('Ext.container.Viewport', {
                layout: 'card',
                items: [
                {
                    xtype: 'panel',
                    items: { xtype: 'doctor' }
                },
                {
                    xtype:'nurse'
                }
                ]
            });
        }, ...
    

    【讨论】:

      【解决方案2】:

      我认为您正在尝试解决错误的问题。您无需将doctor 面板封装到另一个面板中。一般来说,将面板嵌套在另一个里面是不好的......

      您需要做的是为您的doctor 面板指定固定宽度,或者播放它的布局以查看哪个更适合您。

      【讨论】:

      • 指定宽度高度不会改变拉伸效果。
      • 好吧,根据@CD .. 回答它有效。你认为这是正确的做法吗?
      • 我真的认为@sha 是对的。嵌套面板不是一个好方法,但我刚刚回答了你的问题......
      猜你喜欢
      • 2012-01-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-30
      • 1970-01-01
      相关资源
      最近更新 更多