我试图在Ext.MessageBox
标题中设置一个fontawesome图标,我设法使用以下代码完成它:
Ext.Msg.show({
//iconCls: 'x-fa fa-times-circle',
title: '<span class="x-fa fa-exclamation"> Error Title</span>',
message: 'An error occured!!!!!',
buttons: Ext.MessageBox.OK,
width: 400
});
阅读docs我发现我可以使用Ext.panel.Title组件的配置对象设置标题。
但是像下面的示例那样设置配置对象会使标题不可见。
title: {
text: 'Error Title',
iconCls: 'x-fa fa-exclamation'
}
同时检查Chrome开发者工具的Elements标签中的视图,我发现x-paneltitle
类中的图标有div元素。
<div class="x-icon-el x-font-icon" id="ext-element-15"></div>
如何使用MessageBox
配置设置Ext.panel.Title
标题?
答案 0 :(得分:2)
你已陷入文件陷阱。
标题配置在Ext.MessageBox
类实例化中可用,因此,从技术上讲,也可以在show
实例化,但不在Ext.create('Ext.MessageBox',{
title: {
text: 'Error Title',
iconCls: 'x-fa fa-exclamation'
}
});
方法上,您可以在单个实例上调用已经为Sencha预先实例化了。
以下技术上使用自定义标题配置实例化一个消息框:
Ext.MessageBox
但是,要显示show
,您必须调用cTag0 = ReadStoredValue() ' The value left from the previous sync.
cTag1 = GetCTag()
If cTag0 <> cTag1 Then
Resync()
End If
UploadItem() ' Can get race condition if another client changes anything right now
cTag2 = GetCTag()
方法,该方法已被覆盖,以便覆盖您添加到的每个自定义设置标题配置。
答案 1 :(得分:1)
这对我有用:
Ext.Msg.show({
title: {
text: 'Error Title',
iconCls: 'x-fa fa-exclamation'
},
message: 'You are closing a tab that has unsaved changes. Would you
like to save your changes?',
buttons: Ext.Msg.YESNOCANCEL,
icon: Ext.Msg.QUESTION,
fn: function(btn) {
if (btn === 'yes') {
console.log('Yes pressed');
} else if (btn === 'no') {
console.log('No pressed');
} else {
console.log('Cancel pressed');
}
}
});
在这里使用它: https://docs.sencha.com/extjs/6.0.2/classic/Ext.window.MessageBox.html
它是经典6.0.2但它仍然有用。