- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在 TabControl 的每个选项卡的标题中添加按钮(工具)?
我只能在 TabPanel 中添加工具,但我想在选项卡中添加。
Image
我也试过这个,但没有成功:
var lTabPanel = Ext.create('Ext.tab.Panel', {
width: 400,
height: 400,
renderTo: document.body,
items: [{
title: 'Home',
html: 'Home',
itemId: 'home'
}, {
title: 'Users',
html: 'Users',
itemId: 'users',
hidden: true
}, {
title : 'Tickets',
html : 'Tickets',
itemId : 'tickets',
tools:[{
type:'gear',
tooltip: 'Options',
handler: function(event, toolEl, panel){
// Some code.
}
}]
}]
});
最佳答案
其实挺难的。
如果你查看他们的源代码,Ext.tab.Panel
实际上是使用卡片布局,对于每个选项卡,他们使用 Ext.tab.Tab
做标签按钮。
那么如果你查看 Ext.tab.Tab
的源代码,它实际上是在扩展 Ext.button.Button
,这只是一个修改过的按钮。
所以如果需要加工具,恐怕最好的办法就是扩展Ext.tab.Tab
并编写自己的选项卡按钮。你可能想看看他们是如何创建的 closeable
按钮排成一行 233 的 /src/tab/Tab.js
.
(Ext-4.0.2a)
干杯
编辑
所以我们知道Ext.tab.Tab
正在延长 Ext.button.Button
,我们可以利用这个事实,我已经提出了这个解决方案,在 fiddle 上查看:http://jsfiddle.net/uBxqY/4/
基本上,我已经扩展了 Ext.tab.Tab
,并修改了 buttonWrapper 类以便添加箭头 css。没什么特别的,一切都是开箱即用的。
我也覆盖了 onClick
功能,因此当用户单击选项卡本身时菜单不会展开。有点脏,但它有效(从 prototype.onClick
借来的 Ext.button.Split
。
工作示例 :http://jsfiddle.net/uBxqY/4/ ,或来源:
Ext.define('Ext.ux.tab.Tab', {
extend: 'Ext.tab.Tab',
alias: 'widget.ux.menutab',
requires: [
//We just need the onClick from Split button
'Ext.button.Split'
],
/**
* Menu align, if you need to hack the menu alignment
*/
menuAlign: 'tl-bl?',
constructor: function() {
this.callParent(arguments);
//Kind of harsh, we need the click action from
//split button instead.
//Or if you preferred, you can always override this
//function and write your own handler.
this.onClick = Ext.button.Split.prototype.onClick;
},
/**
* Hack the default css class and add
* some resonable padding so to make it looks
* great :)
*/
onRender: function() {
this.callParent(arguments);
//We change the button wrap class here! (HACK!)
this.btnWrap.replaceCls('x-tab-arrow x-tab-arrow-right',
'x-btn-split x-btn-split-right')
.setStyle('padding-right', '20px !important');
}
});
Ext.create('Ext.tab.Panel', {
renderTo: Ext.getBody(),
style: 'margin:10px;',
defaults: {
bodyStyle: 'padding:10px;'
},
plain: true,
items: [{
title: 'Split Tab',
//tabConfig is taken up during tab formation
tabConfig: {
//We use our own custom tab!
xtype: 'ux.menutab',
menu: [{
text: 'Menu item 1'
},{
text: 'Menu item 2'
}]
},
html: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
},{
title: 'Normal Tab',
html: 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.'
}]
});
关于extjs - 如何在 Extjs TabPanel 的选项卡中添加工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6751071/
我的应用程序的布局由一个 TapPanel 组成,它包含另一个 TabPanel。我想让两个 TabPanel 看起来不同。按照关于应用样式的 GWT 教程,我执行了以下操作: TabPanel in
我希望当我启动应用程序时,选项卡面板 tab2 = 已停用, 一旦我单击第一个选项卡面板 tab1 中的按钮,就会被激活, 我尝试过使用 Shinyjs 和 CSS 属性,但我做不到。 感谢您的帮助
我是shiny的新手.我想从文件上传数据集并将其显示在 tabPanel 中.下一步是绘制数据集并在另一个 tabPanel 中显示该图。 .但是我发现当tabPanels的顺序改了,剧情没显示。 如
我正在尝试在我的“主页”tabPanel 上放置一个指向我应用程序的所有其他 tabPanel 的链接。 思路如下: ui = navbarPage("", tabPanel("ho
如何在 GWT 中的 UiBinder 中定义 TabPanel。 TabPanel 和 TabLayoutPanel 有什么区别。在哪里可以找到有关 TabPanel uibinder 参数的其他信
嗨,我正在寻找一种提交包含多个选项卡式表单的表单的方法。用户必须能够通过 POST 一次提交从所有选项卡提交全部数据。主要问题是数据不会提交,除非它被明确呈现/打开,并且在提交时不包括其他未呈现的选项
我正在使用 Shiny 的 R 网络应用程序,该应用程序由主面板左侧的侧栏面板(带有 2 个 tabspanel)和下方的另一个侧栏面板组成。 我想为第一个主面板保留底部侧边栏面板,但为第二个主面板将
我目前正在使用 GXT 3.1.1 显示带有两个选项卡的 TabPanel。第二个选项卡包含 VerticalLayoutContainer 内的 Grid。我的问题是网格的标题行未显示。当我颠倒选项
有什么方法可以禁用 Extjs4 选项卡面板上的所有子项,而不循环它们。 我的代码: var myPanel = new Ext.TabPanel({ region: 'east',
我正在尝试向 TabPanel 添加自定义图标,但当我这样做时,它只显示一个带圆 Angular 的黑框。 我的 CSS 看起来像这样:http://pastebin.org/447682 url 中
我应该如何操作 TabPanel 内的元素? 例如,在第一个选项卡上我有两个项目 - 这些是图表。但是,第二个项目与第一个项目的底部对齐(折线图)。如何将右侧的第二个项目(折线图)与左侧的第一个项目对
我已经开始了一个 sencha touch 项目(我第一次真正接触 JS),但恐怕我已经贪多嚼不烂了.. 我已经创建了大部分应用程序,但在尝试将嵌套列表放入选项卡面板时遇到问题。我收到此错误: Unc
此控件有一个属性 Enabled,其行为与 Visible 的行为完全相同,即 ?.Enabled = false 隐藏该控件。 我需要能够保持所有选项卡可见,但有些选项卡在代码控制下禁用。 关于如何
使用 navbarPage我想要一些 tabPanels右对齐,而其余的 tabPanels和 navbarMenus左对齐: 所以,而不是这个 library(shiny) ui = tag
我正在使用 Seam 2.1.2 和 RichFaces 3.3.2.SR1。
使用 ui <- navbarPage("mytitle", position = "fixed-top", tabPanel("tab1", "long
我为我 Shiny 的应用程序构建了以下模板。 ##ui.R shinyUI(navbarPage("My Application", tabPanel
我在一个区域中有一个带有 TreePanel 的面板布局。用户单击树中的一个节点,TabPanel 应显示在另一个区域,其中包含该树节点的信息、编辑工具等。 我有一个带有树面板和触发的 on('cli
我在 smartGWT 中创建了一个 tabPanel,附上截图我正在尝试增加我的选项卡标题宽度或使我的标题名称垂直放置使“公司信息”和“关系”的名称可以在一行中可见 我用过这个小部件
我有一个 tabpanel,它是表单的一部分(输入字段位于不同的选项卡上)。如果表单包含无效字段,即使它们不在当前选项卡上,我也需要在提交时通知用户。我认为最好的方法是更改标签颜色。 问题是如何在
我是一名优秀的程序员,十分优秀!