基于.NET的三层构架的护理文书系统的设计与实现(14)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

基于.NET的三层构架的护理文书系统的设计与实现(14)



                    if (flag == 0)
                    {
                        flag = 1;
                        lineStartX = getX(k);
                        lineStartY = getResY(resData);
                        if (hxtpye == 0)
                        {
                            g2.DrawString("○", ST8R, Brushes.Red, lineStartX, (float)(lineStartY - LineY));
                        }
                    }
                    else
                    {
                        lineEndX = getX(k);
                        lineEndY = getResY(resData);
                        g2.DrawLine(redPenS, lineStartX + gridWidthByPoint / 2, lineStartY, lineEndX + gridWidthByPoint / 2, lineEndY);
                        lineStartX = lineEndX;
                        lineStartY = lineEndY;
                        if (hxtpye == 0)
                        {
                            g2.DrawString("○", ST8R, Brushes.Red, lineStartX, (float)(lineStartY - (float)3.9));
                        }
                    }
4.4.2    表格样式的打印
表格样式的打印是通过第三方软件Grid++Report,以护理记录单为例,首先绘制打印的模版,这个有点像在设计器里绘制winform的界面,如图4.5所示:
 
图4.5 护理记录单打印模版
然后还需要在程序中调用该模版,并把table中的数据传递给模版,实现打印的效果。它的原理是把数据以一行为单位推入到模版中,                    Report.DetailGrid.Recordset.Append()为一行的开始,                    Report.DetailGrid.Recordset.Post()为一行的结束,其中判断如果列名相同,则把改行的这格数据推入。一个循环下来,就推入了所有数据,如图4.5所示为护理记录单的打印预览效果。 (责任编辑:qin)