0

最近、Ext のバージョンを 4.0.7 から 4.1 にアップグレードしました

「tbar」構成を使用して、上部にコンボが接続されたグリッドがあります。今私が直面している問題は、データがあってもデータがなくても、コンボが適切な幅をとっていないことです。幅を指定しましたが、正しく機能していません。

参考までに画像を添付しましたので、よろしければご覧ください。

これが私のグリッドコードです

Ext.create('Ext.grid.Panel', {
id: 'SourceGridPanelId',
forceFit: true,
autoScroll:true,
store: sourceGridStore,
sortableColumns:false,
enableColumnHide:false,
tbar: createSourceSiteCombo(sourceSiteStore)

これが私のコンボコードです

var sourceCombo= Ext.create('Ext.form.ComboBox', {
id: "sourceSiteID",
fieldLabel:'Select Site',
inputId: "sourceSiteID_input",
store: sourceSiteStore,
queryMode: 'local',
displayField: 'sourceSiteName',
valueField: 'sourceSiteId',
width:200
 });

ここに画像の説明を入力 ここに欠けているものを提案してください。

var combo=Ext.create('Ext.form.ComboBox', 
            {
                multiSelect : false,
                id:'SelectComponentId',
                name:'SelectComponentId',
                allowBlank: true,
                inputId:'SelectComponentId_input',
                hideTrigger: false,
                editable: false,
                selectOnFocus: false,
                typeAhead: false,
                disabled: false,
                readOnly: false,
                width: 312,
                store: [['-1','Select User'],['59','Yagna Tel Clear']],
                value:'-1',
                renderTo:'UserBO_SelectComponentId_Div',
                triggerAction: 'all'
            });

上記のコードで、幅を削除すると正常に動作しますが、デフォルトの幅を使用しますが、幅を割り当てたいと考えています。ここに欠けているものを提案してください

4

2 に答える 2

2

幅は含まれてlabelWidthいます。したがって、フィールドのラベルの幅がたとえば 200 で、フィールドの幅も 200 にしたい場合は、幅を 400 (+マージン) に設定する必要があります。

于 2013-01-11T22:30:29.030 に答える
0

私はこれと同じ問題を抱えていました。コンボボックス構成からフィールド ラベルを取り出し、代わりにこの方法で、フィールド名のツールバーにテキスト オブジェクトを設定する必要があります。

dockedItems: [
            {
                xtype: "toolbar",
                dock: "top",
                items: [
                    {
                        xtype: "tbtext",
                        style: "font-weight:bold;",
                        text:  "Select Site:"
                    },
                    createSourceSiteCombo(sourceSiteStore)
                ]
            }
        ]

fieldLabel から作成された fieldLabel dom オブジェクトが、何らかの理由でツールバーのレンダリングを台無しにしていると思います。

(ドッキングされたアイテムは tbar に取って代わり、ツールバーを作成する標準的な方法になりました)。

于 2012-06-29T18:02:20.750 に答える