社区
Qt
帖子详情
qt做报表
cqu_mywen
2009-12-03 02:45:07
哪位高手知道如何用QT制作类似报表的课打印界面不?其中包括几行文字和几幅图片,望不吝赐教………………
...全文
1535
9
打赏
收藏
qt做报表
哪位高手知道如何用QT制作类似报表的课打印界面不?其中包括几行文字和几幅图片,望不吝赐教………………
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
rcyboom
2009-12-18
打赏
举报
回复
qt中简单的打印过程
1、新建一个qprintviewdialog对象p。
2、connect对象p的printrequisition 信号到自己的一个函数如doprint(*printer)
3、实现doprint函数,就是在里面使用qpainter(print)新建一个painter后直接在里面画就好了。
4、p.exec()
这种方式是显示qt提供的打印预览对话框,该对话框需要你提供printrequisition信号的实际实现。当p需要预览或打印时就会发出该信号,你只要实现好doprint函数即可,别的qt都为你做好了。
需要注意的是:
1、在第三步中当调用painter.begin后默认就会创建一个空白页,所以一开始不需要newpage,直接画就是了;
2、在一页画完以后直接调用print.newpage创建新页面
3、直到所有页面画完后才可以调用painter.end().
4、qt提供的qprintviewdialog对话框已经包含了所有有关打印设置的功能,如需定制可以在新建p之前调用printdialog对话框来获取打印机,将其传给p的构造函数即可。
5、printer对象的pagerect返回的是去掉页边距后的矩形;paperrect返回的是纸张大小(单位可以设置)
6、这种方式不能适合多种打印机,也就是说你设计好了能工作了可能换到针式打印机就不一样了。因为不同打印机支持的纸张及打印分辨率不同。
解决方法推荐:
建议首先在A4纸张和300或600分辨率下设计,程序中设置一个变量deltaW=程序运行时打印机中的纸张宽度*程序运行时打印机分辨率/(A4纸宽度*300或600),然后在所有表示坐标.x或大小.w的数字上乘以deltaW即可。同样的也可以设置垂直缩放比例。
注意是所有的,包括字体大小、及绘图中的各种坐标。这样不管用什么纸张在什么打印机下都可以完全显示了(打出来会是整体放大或缩小)。如果你能预先知道客户机上的打印环境的话,就不必这一步了。
chenzhp
2009-12-17
打赏
举报
回复
qt现在很火爆呀
wibao2
2009-12-17
打赏
举报
回复
有同样疑问,顶一下!~
cqu_mywen
2009-12-14
打赏
举报
回复
多谢赐教。。。运用QT主要因为现在正在用QT开发程序,而所需要的报表又比较简单,不需要用单独的报表,故想用Qt试试。。。。
dext
2009-12-04
打赏
举报
回复
本质上讲,将内容画在屏幕上 和 画在打印机上 是一样的,
但 打印机上的坐标 是 实实在在的 厘米,英寸,
还有 需要换页,
这就需要你在画的时候 计算好大小。
有几个有用的函数
setOrientation() 打印机定向
setPaperSize() 设置纸张大小
setResolution() 设置 DPI
newPage() 新的一页
setNumCopies() 打印多少份
楼上说的 第八章 是个很好的参考。
还有一个 有用的链接 http://doc.trolltech.com/4.5/qprinter.html
feilinhe
2009-12-03
打赏
举报
回复
Qt里面转换成html格式方便打印,可以参见<<C++ GUI Qt4 编程>>第8章打印部分
gemfield
2009-12-03
打赏
举报
回复
可以试试QTableWidget,这是一个可编辑的表格控件,可以显示文本,也可以插入控件(当然包括图片)
gemfield
2009-12-03
打赏
举报
回复
为什么要用qt?
QT
开源
报表
LimeReport 1.51
LimeReport-使用
Qt
框架编写的多平台C ++
报表
生成器库。 库中包含的
报表
设计器允许创建快速且直观的打印表单模板,该模板可以XML格式保存并用于生成
报表
页面。 可以将形成的页面发送到预览,PDF文件或打印机。 作为数据源,开发人员可以使用SQL数据库或使用QAbstractTableModel接口从应用程序传递的数据。LimeReport的目标是为您的应用程序提供功能丰富且同时易于使用的工具,以生成
报表
,即使IT经验不足的用户也可以使用。
Qt
开源
报表
limereport demo
Qt
开源
报表
limereport demo
QT
高级编程
QT
界面美化QSS
QT
网络编程
QT
绘图
QT
多线程视频课程
QT
课程学习目标这套
QT
课程体系是为准备从事以下软件工程师岗位工作的学员群体精心研发的。
QT
软件工程师
QT
高级软件工程师
QT
课程技术模块
QT
核心技术概念
QT
图形窗口编程技术
QT
QSS界面美化实战技术
QT
实用框架编程技术
QT
课程学习路线
QT
核心基础概念体系编程实践
QT
Widgets图形窗口编程基础体系编程实践
QT
基础控件和高级复杂控件体系编程实践
QT
布局管理体系编程实践
QT
模型视图代理框架编程实践
QT
QSS式样表编程实践
QT
界面美化编程实践
QT
文件IO框架编程实践
QT
绘图框架编程实践
QT
图形视图框架编程实践
QT
网络框架编程实践
QT
多线程框架编程实践
QT
线程池框架编程实践
QT
并发库框架编程实践
QT
课程推荐章节
QT
控件美化界面美化是这套
QT
课程中的特色亮点,是
QT
软件工程师在工作实践中可以直接参考应用的,推荐认真学习。
QT
QSS基础控件界面美化
QT
QSS高级控件界面美化
QT
QSS其它控件界面美化
QT
QSS窗口组合界面美化
QT
QSS主窗口界面美化
Qt
开源
报表
limereport,官方源码包
Qt
开源
报表
limereport源码包,5.12.1已经编译好,自己编译报错的可以下载直接用build里面的文件
Qt
报表
软件介绍cutereport
开源
Qt
报表
软件介绍cutereport 有本人学习笔记,10分完全值得
Qt
16,203
社区成员
26,591
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章