Reputation: 5299
I have viewport:
new Ext.Viewport({
layout:'fit',
hideBorders:true,
items:[panel1,panel2,panel3],
});
Now i want to show combobox above viewport:
var myCombo= new Ext.ComboBox({
store:myStore,
editable:false,
renderTo:Ext.getBody(),
triggerActions:'all',
mode:'local',
cls:'scales'
});
css:
.scales{
position:absolute,
botton:1em,
right:1em,
background-color:white
}
But its render in leftside. How to render its in right botton?
UPDATE
Now i put combo into Panle:
myPanel= new Ext.Panle({
items[myCombo],
renderTo:Ext.getBody(),
cls:'scales',
border:false
});
Now my combo in right-bottom. But look like this:
Even i delete viewport code from app i get same result. can i do something with combo?
Upvotes: 0
Views: 358
Reputation: 25031
You CSS is broken, that should be:
.scales{
position: absolute;
bottom: 1em;
right: 1em;
background-color: white;
}
Notice the semicolons and bottom
instead of botton
.
EDIT:
You should render your combo into a window to let Ext manage positioning problematic. Here's an example that renders a minimalist window:
var win = new Ext.Window({
closable: false
,resizable: false
// uncomment to make the window draggable
//,title: '...'
,border: false
// uncomment to make the window modal
//,modal: true
,items: [{
xtype: 'combo'
,store: ['Foo', 'Bar', 'Baz']
}]
});
win.show();
// then use anchorTo to position the window where you want:
win.anchorTo(Ext.getBody(), 'br-br', [10, 10]);
See the doc for anchorTo
.
Upvotes: 1
Reputation: 882
Try
new Ext.panel.Panel({
layout:'fit',
items:[panel1,panel2,panel3],
});
Or put your combo inside the viewport items as:
new Ext.panel.Panel({
layout:'fit',
items:[panel1,panel2,panel3, combo],
});
Upvotes: 1