MFC MDI 怎么生成报表啊?

guxinxuelei 2012-08-12 10:21:01
MFC MDI 怎么生成报表啊?
效果就像是打印预览那样 将子框架里的内容显示在报表里 在这之前还要加上一些必要的文字
在网上几乎搜不到核心东西 还请哪位大神做过 指点一下 谢谢
...全文
406 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
chuchenghao1989 2013-09-27
  • 打赏
  • 举报
回复
gridctrl控件。。。
hdg3707 2012-08-19
  • 打赏
  • 举报
回复
提供大概思路
1.坐标系设为MM_TWIST(好象是这么写的,具体忘了,但和这个类似,这个适合打印)
2.打印和打印预览其实是一个代码,分三部分:
(1)报头:用来显示报头信息,是纯文字信息
(2)数据:包括报表的表头及表格加上数据
(3)报尾:用来显示类似页数,制表人,打印日期等,也是纯文字信息。
3.报头的编程:
设好文字的字体大小并取得字体的高度在相应的位置上显示出来。
4。数据的编程:
根据报头限得的字体的高度来决定报表的表头的起始位置并根据纸张的大小决定画多少行,进而知道数据域的最后坐标。
5。报尾的编程:
根据取得的数据域的最后坐标值显示报尾信息。
6.翻页:
根据总的数据量和行数来决定分几页,根据当前的页数来显示对应的数据
显示的代码和打印的代码是一样的,最多调整一下初始坐标值就行了(如果不统一坐标系)
guxinxuelei 2012-08-19
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
想生成完全合适自己的报表,就得自己能CDC类里的函数画,包括打印预览,打印等,在视图类就是自己的子窗口,用CDC类里的dc->MoveTo(x1,y1);dc->LineTo(x2,y2);来画表格,用dc->TextOut或dc->DrawText函数来输出文字信息.
打印及打印预览用MFC里函数就可以,这得省点事,从网上可以查到MFC的打印及MFC打印预览的方法,在窗口的显示表格的代码可以和……
[/Quote]

比如预览的时候是主框架里的内容 现在我想把它往下移一下 在上面加入一些必要的说明信息 你有没有什么好的例子可以参考呢 谢谢
guxinxuelei 2012-08-19
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]
提供大概思路
1.坐标系设为MM_TWIST(好象是这么写的,具体忘了,但和这个类似,这个适合打印)
2.打印和打印预览其实是一个代码,分三部分:
(1)报头:用来显示报头信息,是纯文字信息
(2)数据:包括报表的表头及表格加上数据
(3)报尾:用来显示类似页数,制表人,打印日期等,也是纯文字信息。
3.报头的编程:
设好文字的字体大小并取得字体的高度在相应的位置上显示出来。
……
[/Quote]

谢谢你写这么详细给我 我也看了些例子 懂你说的意思
我现在想做的就是:MDI主框架上有表格啊还有图形 当点击打印预览的时候呢 上面有标准的几个按钮:
什么打印 前一页 后一页什么的
现在我想做的报表格式呢 就是在预览的基础上 前面加些说明信息 后面也可以加点时间点
那几个标准按钮可以改不? 比如我不想要前一页 后一页
我没有具体的例子可供参考 所以如果你做过的话 多指点我一下哈 谢谢你
长尾巴的悟空 2012-08-12
  • 打赏
  • 举报
回复
都是神人~!
hdg3707 2012-08-12
  • 打赏
  • 举报
回复
想生成完全合适自己的报表,就得自己能CDC类里的函数画,包括打印预览,打印等,在视图类就是自己的子窗口,用CDC类里的dc->MoveTo(x1,y1);dc->LineTo(x2,y2);来画表格,用dc->TextOut或dc->DrawText函数来输出文字信息.
打印及打印预览用MFC里函数就可以,这得省点事,从网上可以查到MFC的打印及MFC打印预览的方法,在窗口的显示表格的代码可以和打印及打印预览共用一个代码,只要改变坐标系就行,或者显示和打印共用一个坐标系,这样显示和打印代码就完全是一个代码了
zgl7903 2012-08-12
  • 打赏
  • 举报
回复
自己控制 想怎么玩都可以
MFC Grid control
看不见的裂痕 2012-08-12
  • 打赏
  • 举报
回复
怎么会没有??
Crystal Report

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧