说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

怎么样才能调用PrintDialog组件打印,如要打印Memo组件中的文字。

编辑:说三道四文库 发布时间:2017-09-24 08:24
HTML文档下载 WORD文档下载 PDF文档下载
这里是打印代码,不错的哦:
void __fastcall TMainForm::Print1Click(TObject *Sender)
{
  Screen->Cursor = crHourGlass;
  Application->ProcessMessages();

  TList* pageList = new TList;
  int width = GetDeviceCaps(Printer()->Handle, PHYSICALWIDTH);
  int height = GetDeviceCaps(Printer()->Handle, PHYSICALHEIGHT);
  int logPixelsX = GetDeviceCaps(Printer()->Handle, LOGPIXELSX);
  int logPixelsY = GetDeviceCaps(Printer()->Handle, LOGPIXELSY);
  int xOffset = GetDeviceCaps(Printer()->Handle, PHYSICALOFFSETX);
  int yOffset = GetDeviceCaps(Printer()->Handle, PHYSICALOFFSETY);

  SendMessage(RichEdit->Handle, EM_FORMATRANGE, 0, 0);
  FORMATRANGE fr;
  memset(&fr, 0, sizeof(fr));
  fr.hdc = Printer()->Handle;
  fr.hdcTarget = Printer()->Handle;
  SetMapMode(fr.hdc, MM_TEXT);

  TRect pageRect;
  pageRect.left = 0;
  pageRect.top = 0;
  pageRect.right = MulDiv(width - xOffset, 1440, logPixelsX);
  pageRect.bottom = MulDiv(height - yOffset, 1440, logPixelsY);

  TRect rendRect;
  rendRect.left = pageRect.left + (Margins->Left * 1440) - xOffset;
  rendRect.top = pageRect.top + (Margins->Top * 1440) - yOffset;
  rendRect.right = pageRect.right - (Margins->Right * 1440);
  rendRect.bottom = pageRect.bottom - (Margins->Bottom * 1440);

  fr.chrg.cpMin = 0;
  fr.chrg.cpMax = -1;
  int textLen = RichEdit->Text.Length();
  do {
    fr.rc = rendRect;
    fr.rcPage = pageRect;
    TPrinterPage* page = new TPrinterPage;
    page->StartPos = fr.chrg.cpMin;
    fr.chrg.cpMin = SendMessage(
      RichEdit->Handle, EM_FORMATRANGE, false, (int)&fr);
    page->EndPos = fr.chrg.cpMin - 1;
    pageList->Add(page);
  } while (fr.chrg.cpMin != -1 && fr.chrg.cpMin < textLen);

  SendMessage(RichEdit->Handle, EM_FORMATRANGE, 0, 0);

  PrintDialog->MaxPage = pageList->Count;
  if (!PrintDialog->Execute()) {
    Screen->Cursor = crDefault;
    return;
  }
  Printer()->Title = "Rich Edit Printing Example " +
    ExtractFileName(OpenDialog->FileName);
  int startPage, endPage;
  if (PrintDialog->PrintRange == prPageNums) {
    startPage = PrintDialog->FromPage - 1;
    endPage = PrintDialog->ToPage - 1;
  }
  else {
    startPage = 0;
    endPage = pageList->Count - 1;
  }

  Screen->Cursor = crHourGlass;
  Application->ProcessMessages();

  textLen = RichEdit->Text.Length();
  Printer()->BeginDoc();
  SetMapMode(Printer()->Handle, MM_TEXT);
  fr.hdc = Printer()->Handle;
  fr.hdcTarget = Printer()->Handle;
  int pageCount = startPage;
  do {
    fr.rc = rendRect;
    fr.rcPage = pageRect;
    TPrinterPage* pp = (TPrinterPage*)pageList->Items[pageCount];
    fr.chrg.cpMin = pp->StartPos;
    fr.chrg.cpMax = pp->EndPos;
    Printer()->NewPage();
    SendMessage(RichEdit->Handle, EM_FORMATRANGE, true, (int)&fr);
  } while (++pageCount < endPage + 1);

  SendMessage(RichEdit->Handle, EM_FORMATRANGE, 0, 0);
  Printer()->EndDoc();

  for (int i=0;i<pageList->Count;i++)
    delete (TPrinterPage*)pageList->Items[i];
  delete pageList;
  Screen->Cursor = crDefault;
}
//---------------------------------------------------------------------------
$.recallDroppables()-JQuery API $.SortSerialize()-JQuery API Draggable(hash)-JQuery API DraggableDestroy()-JQuery API Droppable(options)-JQuery API DroppableDestroy()-JQuery API Sortable(options)-JQuery API SortableAddItem(elem)-JQuery API $.meta.setType(type, name)-JQuery API data()-JQuery API disableTab(position)-JQuery API enableTab(position)-JQuery API tabs(initial, settings)-JQuery API triggerTab(position)-JQuery API triggerTab(position)-JQuery API Tooltip(settings)-JQuery API PHP简介-PHP初学入门教程1 选择PHP的理由 -PHP初学入门教程2 从一个简单的程序来了解PHP -PHP初学入门教程3 PHP语法基础 -PHP初学入门教程4 建设一个简单的交互网站(一) -PHP初学入门教程5 建设一个简单交互的网站(二) -PHP初学入门教程6 建设一个简单交互的网站(三)密码验证 -PHP初学入门教程7 PHP文件上传 -PHP初学入门教程8 为站点添加投票功能 -PHP初学入门教程9 广告条轮播-PHP初学入门教程10 操作MySQL数据库实现简单的留言板-PHP初学入门教程11 使用PHP来操作Oracle数据库 -PHP初学入门教程12 技术杂项PHP教程结束篇 -PHP初学入门教程13 .NET中DataSet和DataReader的区别与转换 CGI技术及其开发(二)-Delphi资料 VB .NET能用于AutoCAD开发吗? 如何用OnMouseWheel实现Image的放大缩小? 装了Media Player 9.0,怎么没声音? 如何将DataSet中的数据全部写入数据库? 简单问题(关于光标移动) 一个关于java的小问题要请教? 请问delphi中有二~十进制的转换函数吗..... 关于不同页面调用的问题,谢谢 can't open the file"cos.obj" 这里到底怎么了?有人“非典”发作了? 关于STL的问题: dreamwearver mx如何预览asp.net的一些控件>? 关于日期格式的问题 如何使自己的程序访问别的程序的内容? 很初级的问题. 关于DB2的培训资料或者ppt 初学JAVA希望大家介绍点好书,有分的哦~~~~~~~~~~ 关于DB2的培训资料或者ppt qqf (我就是我) 可以进来一下吗? 准备作一个短信项目,请做过类似项目的高手不吝指教! 关于刷新框架内页面的问题! 请教,真的很急,来看看,,, 帮忙出主意呀, 新认识一个MM, 特骄气, 爱好也少,怎么哄呀,或者兄弟们介绍一下经验. 求delphi 5开发人员指南 电子版 如何用四叉树进行图像压缩源代码 小问题 谁对nil理解的多呀,哈哈,来看看哦,超级难题 开机自检的时候屏幕花屏,无法进入操作系统。图形模式下花屏,文字模式下正常,怎么解决? 高分求助,JS菜单问题,在线等 我需要msdn最新版 连接 vb做报表的问题 好书推荐 我的站点怎么必须登陆? 这样能释放链表内存吗 请问如何手动调整datagrid的列宽? design pattern in java 书籍 关于调用外部文件并且打开一个应用程序的问题?? 请问create table 返回值为2 是什么意思? 如何象进入sina时一样弹出那种打广告的小框? 一个frame获取参数的问题 如何用Response.BinaryWrite输出文件内容 我想问一个隐藏表格的程序,好象很简单的 高手请进, 小弟有难!!!…………………… 哪里有详细介绍sql2000中pubs和northwind数据库的资料! 请教一个简单问题:请问哪里有lzw算法的详细介绍?压图片可以用这个算法么?有没有lzrw算法! 为什么一些网站把一张大图片要切开很多块? 有谁能确切解释edit.tag的属性tag的含义吗? 如何让打开的对话框自动充满客户区? 如何控制控件的前后位置关系? (100分)我copy了一段滚动的代码,怎么就是调试不通啊!帮忙啊! 用query读娶access里的“温度”字段数据怎么不行? 谁能帮我做一个小学六年级的作文封面?名叫《揣好梦想上路 》——我的作文集.好看一点哦!A4纸打印,要好看,符合年龄,加上作者:杨涵.标题和作者都要用艺术字. 少先队活动计划记录具体计划和与计划相符合的活动记录(春季) 困惑,CH4甲烷 C2H4乙烯 C2H5OH乙醇他们的化合价为什么不是0,H在这里化合价不是1吧? 不及物动词后面为什么可以接宾语从句?agreeAgree是不及物动词,但是例句里接了宾语从句:We agreed that the proposal was a good one.这个例句是牛津高阶第七版上的,为什么不及物动词这里可以接宾语 少先队工作-十分钟班队会活动记录怎么写 我初中化学这一门就很差,现在上高中了,也只懂得化学的一些皮毛,考试也只能勉强连蒙带猜把选择题做一下,只能考二三十分.做题时就不知道什么物质和什么物质生成什么.有时老师讲课也能 happen 后边跟to do为什么不是to doing?happen为不及物动词 to应该是介词所以我认为应该是to doinghappen为不及物动词 to应该是介词所以我认为应该是happen to doing 星期日上午,班级组织社区服务活动,你没有准时赶到,耽误了出发时间,你会对大家怎么说呢?50字 1.加热一壶水,水分子的运动会加剧,那么水分子中的电子的运动会加剧吗,为什么?2.锌条与铜条相连接,中间有一电流表,锌和铜分别浸在2杯盐酸中,假设盐酸足够多,那么电流表有示数吗?(我认 be eager for sth中eager是不及物动词吗?adjust to doing sth中to doing sth是不是做宾语,adjust是及物 返校那天我没去,问同学说老师发的是卷子,怎么办啊,我也想借同学的复印,可是他们不是在外地就是家远不愿出来.不过我们老师在群上发过作业,可是是照片,照片能打印吗? 困惑!学化学!为什么在化学上用的时间比物理多,却成绩总不如物理.而且,觉得好多化学的基本知识遗忘的特别快.觉得别的同学老实讲一遍都能记住,而我却总要翻书,翻笔记本.特别是有机那一 “夸夸其谈”这个成语是褒义还是贬义?快 班级团支部组织团员到社区为老人开展服务活动,而你没有准时赶到,耽误了大家的出发时间,你应 不专心听课的成语有哪些 物体受重力mg和竖直向上的一个力F,它的加速度是多少么 互为倒数的两个数成正比例吗,为什么.请用关系式解答. 感叹句练习题50道加答案!顺便加上定语从句,要求一样! want to do和tell sb to do 的do是及物动词还是不及物动词?还是及物动词,不及物动词都可以?want to do和tell to do 诸如此类的短语的to do中的do是及物动词还是不及物动词?还是及物动词,不及物动词都 泰戈尔的代表诗集是什么 闷组词. 电源电压6V保持不变,滑动变阻器R2上标有50欧1A字样,电流表与电压变得大量程均已损坏.闭合电键后,当电压表V的示数为1.6V时,电流表A的示数为0.2A求:1.电阻R1的阻值2.不移动滑片,通电10秒钟电阻R 儿子对母亲说:"您把看病过程写在纸上,我好照着办啊!"改为转述句. 请根据你熟悉的生活、学习环境,仔细观察,开动脑筋,看看有哪些物品、器具需要改进,选其中一件,将其改进的想法写成一篇奇思妙想,并大致说明这么做的原因.要求:奇思妙想要有一定的科学 关于孝顺的作为600字 欧阳修 归田录 译文题目什么的都不清楚,我把开头一句写出来,仁宗在东宫,鲁简肃公.... 高中化学滴定的一道题目的一个选项“食醋总酸含量测定实验中,标准液NaOH既可以滴定未知浓度的食醋,也可被食醋滴定,前者甩酚酞做指示剂,后者用甲基橙做指示剂”宁波十校联考的题目,这 孝敬老人的文章 600字快点,明天九点之前 泰戈尔诗集有哪些 第(4)题,求详解. V-T图像中在X轴的下方是表示什么?向下与向上有什么不同? 她问儿子:说说看,孩子,你都干了些什么?(直接引语改成间接引语)不要太别扭 连续通过相同位移的时间比的推导 如何推进少先队活动课开展 欧阳修《归田录》卷二给我们什么启示快【原文】: 钱思公虽生长富贵,而少所嗜好.在西洛时尝语僚属,言平生惟好读书,坐则读经史,卧则读小说,上厕则阅小辞,盖未尝顷刻释卷也.谢希深亦言 这句话是用的什么修辞手法?呵呵,她出落得惊人的端庄典雅,就像有个作家说的…… 请问这句话用得是什么修辞手法? 《泰戈尔诗选》主要内容和感悟我想要《泰戈尔诗选》的主要内容和中心思想,还要印象深刻的个别情节(5个)和对这些情节的感悟,江湖救急,急要啊 过抛物线y^2=-8x内一点(-1,1),且被该店平分的抛物线弦所在的直线方程为 我初一九班的,帮忙设计个班语呀、、 你连一间小小的屋子都不扫,又怎么去扫天下呢?(改为否定句) 我很费解的化学题将0.1mol/LHCOONa溶液和0.05mol/L盐酸溶液等体积混合后,溶液中各微粒的物质的量浓度的大小关系是( ) A,[Cl-]=[HCOOH]=[HCOO-]>[H+] B,[Cl-]=[HCOO-]> [HCOOH]> [H+] C,[HCOO-]> [Cl-]> [H+]> [HCOOH] D.[HCOO 要体现班级特色和特性 我是初一九班 泰戈尔写的诗歌《纸船》主要内容是什么? 在v-t图像中怎样知道物体是做直线运动 有关化学滴定 追加20分用甲基橙作指示剂,滴定时锥形瓶(盛NaOH)由黄色变成橙色,立即记下滴定管液面所在刻度 会引起误差,为什么? 如何保证每周一课时的少先队活动课 3,在△ABC中,向量AB=向量C,向量AC=向量b,若点D满足:向量BD=向量DC,则向量AD=? 已知HF的酸性比HCN的强,现有物质的量浓度和体积均相等的NaF和NaCN两种溶液,求F离子浓度和CN离子浓度的大小关系本人以为:因NaF的碱性较弱,所以F离子水解程度较小,所以F离子浓度大于CN离子 光荣啊 少先队 征文快 “秋天的故事”和“秋天里的故事”,这两个作文题目有什么区别 已知芳香族化合物A,B,C,D的化学式均满足C8H8Ox,请按要求回答下列问题:①写出C在NaOH溶液中反应的化学方程式___,反应类型为___.②设计试验鉴别E、M、N(填写下列表格,步骤可不填满) 急改写《父母的心》结尾350字 谁能提供作文题目?要最好的(自己想哦!),一般是搞笑点的作文,写景也行,或是记事一定要最好最好的,不能使作文选里抄的哦!求你们了,多一点儿~我很可怜的,对了,要新颖的~我看好你们 平凡事物中的美的作文300字 我是高一新生,刚刚中考完进了个很好的市重点,但是还没来得及轻松作业就发下来一堆.更厉害的是时间已经不多了,但作业实在无法完成.但是开学又要检查作业然后摸底考,怎么办…… 某氯化镁溶液的密度为1.18g/cm其中镁离子的质量分数为5.1%.300mL该溶液中的氯离子物质的量约为 (1.5moL)这是为什么呢? 用agree to do sth 同意做某事 a way of doing sth做事的方式造句 怎样在一天之内做好所有的暑假作业 Screw up my courage什么意思Screw up my courage 确定点的 下边俩答案意思相反。汗 不要百度一搜一复制,开头结尾用现代作家的句子算套话作文吗? 中国珠算备选“非遗” 入选“非遗”项日媒:两艘中国海警船驶入钓鱼岛附近毗第十一届夏威夷“中国风情节”开幕浙江部分行政区划调整 绍兴县上虞市撤宁波住博会市民看房重开发商 遗憾大牌通讯:历史遗迹记录昔日辉煌――泰国旧英国铜像常被挂内裤乳罩 政府被迫将其英国铜像常被挂内裤乳罩 政府被迫将其通讯:历史遗迹记录昔日辉煌――泰国旧亲善合作 睦邻友好——国内外人士积极马来西亚举办“小状元汉语经典诵读大赛巴基斯坦塔利班头目死于美无人机空袭 英国一医院医疗过失误诊流产 恐致死逾第五届中国木质玩具文化节在浙江云和开为阻法院强制执行 浙江金华一老人扬言浙江金华一智障儿命悬半空 特勤消防空宁波银行发力托管业务 首只公募基金开浙江云和经贸合作洽谈签约引资50多亿把美式“监听帝国”关入“笼子”杭城周末马拉松大派对 关键词:超越、美国无人机再次出手清除巴塔首领 和谈看男篮“大个儿”驰骋绿茵场英国庆祝女王90大寿 千座灯塔点火致郑州完成“红顶中介”摘帽试点 看各协除了龚清概,这10个人也因“钱色交易河南回应“游客被石块砸死”事件:未提四川高考不分文理科引热议 教师:利于4月22日 四川早知道揭短力度反映认识问题程度影响解决问题英超-阿森纳2-0 获队史英超第50北约“主动”约俄罗斯 为何无果而散?国防科大推出我国首款智能安保机器人 又一个百亿级理财平台出事!中央启动专新头衔!张虹受聘河北宣化形象大使欧盟人权代表督促美国接受更多叙利亚难联合国:逾165个国家将签署《巴黎协美国拟扣20亿美元伊朗资产作赔偿抚恤“世界最老的狗”去世 相当于人类16淮南警方查处淫秽表演 女子脱内裤表演美忧虑“博科圣地”与“伊斯兰国”加强大众将赔偿美国消费者总支出超过10亿科隆波恩机场机场保密应急方案竟放网上
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘