我做的程序已经做了很多,现在要加入打印功能(在创建时去掉了打印功能),该怎么办!

kitty 2000-04-02 03:23:00
...全文
218 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
蝈蝈俊 2000-04-03
  • 打赏
  • 举报
回复
新建两个工程,一个有打印功能,一个无打印功能,比较一下,差什么,在您的工程中加入缺的就可以了.
telan 2000-04-03
  • 打赏
  • 举报
回复
在CFormView中手动添加如下消息映射:
ON_COMMAND(ID_FILE_PRINT, CDaoRecordView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CDaoRecordView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, DaoRecordView::OnFilePrintPreview)

然后重载如下函数即可。
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
kitty 2000-04-03
  • 打赏
  • 举报
回复
我用了CPrintDialog类来实现打印,在运行时提示Warning: CFormView does not support printing.(用的是CDaoRecordView,另创建一个工程,加上了打印功能,用同样的方法(用CPrintDialog类),选择菜单里的打印选项却一切正常)
kitty 2000-04-03
  • 打赏
  • 举报
回复
再次说明一下情况:
我建的工程用的是单文档/视结构,选择了数据库支持,但没选打印支持,现在想加上打印功能,具体做法是按下视上某个按钮时,打印某些数据.
我重建了一个有打印功能的工程,里面用了一个按钮调用CPrintDialog类来实现打印,运行时在下面的DEBUG窗口中显示Warning: CFormView does not support printing.但选择菜单中的打印选项却一切正常!
现在我该怎么做呢?
vchuman 2000-04-02
  • 打赏
  • 举报
回复
如果要使用像向导中的代码,可以生成一个新的工程(方法如上)
其二:可以使用CPrintDialog类来实现。(需要详细方法请mailto vcman@163.net
shiyonglin 2000-04-02
  • 打赏
  • 举报
回复
要是不需要控制低级打印的话,也就是只需要VC环境提供的打印功能的话,可以直接在你的工程中调用虚函数OnFilePrint()和OnFilePrintPriview()即可,方法是可以直接调用,也可以用ClassView来加入,然后可以重载OnPreparePrint,OnBeginePrint,OnEndPrint等函数.很简单,如果还有问题可以和我联系,Email shiyonglin@263.net
telan 2000-04-02
  • 打赏
  • 举报
回复
重建一个新的空工程,将打印功能选上,
然后按照它将函数映射一一加上不就
OK了,保证不会出错啦,而且也没几个
函数.
老规矩,先看本节效果图我们实现这个支付功能完全是借助小程序云开发实现的,不用搭建自己的服务器,不用买域名,不用备案域名,不用支持https。只需要一个简单的云函数,就可以轻松的实现微信小程序支付功能。核心代码就下面这些一,创建一个云开发小程序关于如何创建云开发小程序,这里我就不再具体讲解。不知道怎么创建云开发小程序的同学,可以去翻看我之前的文章,或者看下我录制的视频:https://edu.csdn.net/course/play/9604/204528创建云开发小程序有几点注意的1,一定不要忘记在app.js里初始化云开发环境。2,创建完云函数后,一定要记得上传二, 创建支付的云函数1,创建云函数pay三,引入三方依赖tenpay我们这里引入三方依赖的目的,是创建我们支付需要的一些参数。我们安装依赖是使用里npm 而npm必须安装node,关于如何安装node,我这里不讲解,百度一下,网上一大堆。1,首先右键pay,然后选择在终端中打开2,我们使用npm来安装这个依赖。在命令行里执行 npm i tenpay安装完成后,我们的pay云函数会多出一个package.json 文件到这里我们的tenpay依赖就安装好了。四,编写云函数pay完整代码如下//云开发实现支付 const cloud = require('wx-server-sdk')cloud.init() //1,引入支付的三方依赖 const tenpay = require('tenpay'); //2,配置支付信息 const config = ;exports.main = async(event, context) => 一定要注意把appid,mchid,partnerKey换成你自己的。到这里我们获取小程序支付所需参数的云函数代码就编写完成了。不要忘记上传这个云函数。出现下图就代表上传成功五,写一个简单的页面,用来提交订单,调用pay云函数。这个页面很简单,1,自己随便编写一个订单号(这个订单号要大于6位)2,自己随便填写一个订单价(单位是分)3,点击按钮,调用pay云函数。获取支付所需参数。下图是官方支付api所需要的一些必须参数。下图是我们调用pay云函数获取的参数,和上图所需要的是不是一样。六,调用wx.requestPayment实现支付下图是官方的示例代码这里不在具体讲解了,完整的可以看视频。实现效果1,调起支付键盘2,支付完成3,log日志,可以看出不同支付状态的回调上图是支付成功的回调,我们可以在支付成功回调,改变订单支付状态。下图是支付失败的回调,下图是支付完成的状态。到这里我们就轻松的实现了微信小程序的支付功能了。是不是很简单啊,完整的讲解可以看视频。

16,471

社区成员

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

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

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