Extjs Window用法详解 3 打印具体应用,是否关掉打印预览的界面
Extjs Window用法详解 3 打印具体应用,是否关掉打印预览的界面
Extjs 中的按钮元素
{
xtype: 'buttongroup',
title: '打印',
items: [
me.tsbDel = Ext.create('Ext.button.Button', {
text: '打印123',
iconCls: 'tool_print',
scale: 'large',
iconAlign: 'top',
handler: function () {
var window = me.createWindow('www.view.report.vwwprint', {
params: {
oid: record.data.id,
}
});
}
}), ]
},
Extjs弹窗使用的第一种打印
Ext.define('www.view.report.vwwprint', {
extend: 'www.controls.WinBase',
width: 800,
height: 600,
autoShow: true,
modal: true,
stateful: false,
maximizable: false,
minimizable: false,
resizable: false,
layout: 'fit',
title: '打印的内容',
iconCls: 'icon_taskboxlist',
initComponent: function () {
var me = this;
me.items = [
{
xtype: 'panel',
border: 0,
html: '<iframe id="ifPrint" name="ifPrint" src="' + me.url + '' + Ext.Object.toQueryString(me.params) + '" width="100%" height="500" frameborder="0" scrolling="auto"></iframe>'
//html的具体内容
//<iframe id="ifPrint" name="ifPrint" src="./D/Report/VSearchReport/?DateStart=2018-06-03T00%3A00%3A00&DateEnd=2018-07-03T00%3A00%3A00" width="100%" height="500" frameborder="0" scrolling="auto"></iframe>
//调用的位置以及参数
handler: function () {
var window = me.createWindow('www.view.report.vreport', {
url: "www/Report/VSearchReport/?",
title: '贵阳银行中心金额现金收付统计打印表',
params: {
//oid: me.SelectedOID,
//otype: me.SelectedType,
DateStart: me.dpFromDate.getValue(),
DateEnd: me.dpToDate.getValue()
},
listeners: {
//ok: function () {
// me.loadData();
//}
}
});
}
//
}];
me.buttons = [
me.btnOK = Ext.create('Ext.button.Button', {
text: '打印',
handler: function () {
var iframe = document.getElementById('ifPrint');
iframe.contentWindow.focus();
iframe.contentWindow.print();
//me.close();是否关掉打印预览的界面,添加这一句,就会关掉预览界面,不加这一句预览界面就会一直存在,简单说就是该资源是否释放
}
}),
me.btnCancel = Ext.create('Ext.button.Button', {
text: '关闭',
handler: function () {
me.close();
}
})];
me.callParent(arguments);
}
});
Extjs弹窗使用的第二种打印
1、html文件
<div id="content"> <h2>欢迎访问起飞网Extjs教程</h2> <p> 更多Extjs教程,请访问<a href="http://www.qeefee.com/zt-extjs">http://www.qeefee.com/zt-extjs</a> </p> </div>
2、
//创建window var win = Ext.create("Ext.window.Window", { id: "myWin", title: "示例窗口", width: 500, height: 300, layout: "fit", autoShow: true, contentEl: "content",
items: [ buttons: [ { xtype: "button", text: "确定", handler: function ()
//{
//this.up("window").close();
//}
var iframe = document.getElementById('ifPrint');
iframe.contentWindow.focus();
iframe.contentWindow.print();
}, { xtype: "button", text: "取消", handler: function () { this.up("window").close(); } } ]
});
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 通过 API 将Deepseek响应流式内容输出到前端
· AI Agent开发,如何调用三方的API Function,是通过提示词来发起调用的吗