首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >extjs3下拉菜单调整定位

extjs3下拉菜单调整定位
EN

Stack Overflow用户
提问于 2014-08-12 15:39:11
回答 1查看 237关注 0票数 0
代码语言:javascript
复制
            var tpl = new Ext.XTemplate(
                '<tpl for=".">',
                '<div class="thumb-wrap">',
                '<img src="../images/warning.png" style="vertical-align: middle;" title="Warning">',
                '<span class="x-editable" style="margin-left: 3px;">{text}</span></div>',
                '</tpl>',
                '<div class="x-clear"></div>'
            );

            var msg = store.proxy.lastDataTableObject.logMessages;                
            var topToolbar = this.gridPanel.topToolbar;

            if (msg && msg.length > 0) {                    
                //Warning Messages menu
                topToolbar.insert(topToolbar.items.items.length - 1,{
                    text: "Warning Messages",
                    menu: {
                        xtype: 'menu',
                        autoScroll: true,
                        maxHeight: 200,
                        items: [
                            new Ext.DataView({
                                store: new Ext.data.SimpleStore({data: msg, fields: ['text']}),
                                tpl: tpl,
                                autoWidth: true,
                                multiSelect: true,
                                overClass: 'x-view-over',
                                itemSelector: 'div.thumb-wrap',
                                emptyText: 'No warnings to display'
                            })
                        ]
                    }
                });
                topToolbar.doLayout();

我做了这个菜单,里面有一个DataView。我的最终目标是添加maxHeight,使下拉元素的右上角始终锚定在按钮元素的右下角。

下面是目前发生的事情:

在固定高度下,锚定问题仍然存在,但至少菜单会按其应有的方式下降:

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-16 17:33:24

您可以使用工具栏按钮上的menuAlign配置,其值为tr-br,它将元素的右上角(在您的情况下是菜单)对齐到目标的右下角(在您的情况下是该按钮)的右下角。

代码语言:javascript
复制
if (msg && msg.length > 0) {
    topToolbar.insert(topToolbar.items.items.length - 1,{
        text: "Warning Messages",
        menuAlign: 'tr-br',  // Add this line here
        menu: {
            xtype: 'menu',
            ...
        }
    });
    topToolbar.doLayout();
}

下面是一个基于代码的Sencha小提琴网站的工作实例,供您参考。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25268530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档