当前位置: 首页 > news >正文

秦皇岛哪里能做网站网站制作代码

秦皇岛哪里能做网站,网站制作代码,制作一个公司网站的流程,学编程的appFastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。 FastReport.NET官方版…

FastReport .Net是一款全功能的Windows Forms、ASP.NET和MVC报表分析解决方案,使用FastReport .NET可以创建独立于应用程序的.NET报表,同时FastReport .Net支持中文、英语等14种语言,可以让你的产品保证真正的国际性。

FastReport.NET官方版下载(585577353)icon-default.png?t=N7T8https://www.evget.com/product/1861/download

配置列

您可以通过右键菜单添加或删除列。

  • 选择表格或其任何元素,然后将光标放在需要的列上。光标的形式将变为一个黑色小箭头。

fastreport

  • 左键单击,选择列;
  • 右键单击,以显示列的右键菜单;
  • 如果您需要选择多个相邻的列,请左键单击,然后在不离开鼠标的情况下,向右或向左移动鼠标,以选择相邻的列。

列的右键菜单也可以在 "Report Tree"窗口中调用。打开该窗口,选择需要的列并单击鼠标右键。

管理列的大小

您可以使用以下方法之一设置列的宽度:

  • 选择表格或其任何元素,并将光标置于两列之间的边界上。光标的形式将变为水平分割器:、

  • 选择一列并在 "Width "属性中指定所需的宽度。该属性可在 "Properties "窗口中访问。

您也可以启用 "AutoSize "列属性。在运行报表时,将自动计算列的宽度。为了限制列的宽度,您可以指定 "MinWidth "和 "MaxWidth "属性。

列宽不应大于页面宽度。

配置行

行的配置方式相同。要选择一行,请执行以下操作:

  • 选择表格或其任何元素,并将光标置于所需行的左侧。光标的形式将变为一个黑色小箭头:

fastreport

  • 单击鼠标左键,以选择行;
  • 右击鼠标,显示该行的右键菜单。

如果您需要选择相邻的几行,则左击鼠标,然后在不离开鼠标的情况下,向右或向左移动鼠标,以选择相邻的行。

管理行的大小

您可以使用以下方法之一设置行的高度:

  • 选择表格或其任何元素,并将光标放在两行之间的边界上。光标的形式将变为垂直分割器:

fastreport

左击并移动鼠标,以改变行的大小。

  • 选择行,并在 "Height "属性中指定所需的高度。在 "Properties "窗口中可以访问该属性。

您还可以启用行的 "AutoSize "属性。运行报表时,将自动计算行的高度。为了限制行的高度,可以使用最小高度("MinHeight")和最大高度("MaxHeight")属性:行的高度不应大于页面高度。

配置单元格

单元格是文本对象。从本质上讲,单元格类继承自 "Text "对象。上面提到的关于 "Text "对象的所有内容同样适用于表格的单元格。

编辑单元格的文本就像编辑 "Text "对象一样。此外,您还可以将 "Data "窗口中的元素拖放到单元格中。

单元格的边框和填充可以通过 "Border and Fill "工具栏进行配置。

要调用单元格的右键菜单,只需右击该单元格即可。

连接和拆分单元格

您可以连接表格中相邻的单元格,形成一个大单元格。

  • 用鼠标选择第一个单元格;
  • 左键单击并移动鼠标,选择单元格组;
  • 在选中的区域上单击鼠标右键,以显示单元格的右键菜单;
  • 在右键菜单中选择 "Join cells"。

fastreport

要分割单元格,请调用其上下文菜单并选择 "Split cell"项。

在单元格中插入对象

您可以在单元格中插入其他对象,例如图片。以下对象不能添加到单元格中:

  • "Table"
  • "Matrix"
  • "Subreport"

fastreport

要在单元格中添加对象,只需将其拖入单元格即可。您可以在单元格之间自由移动对象,也可以将其带回表格边界之外。

单元格是放置对象的容器。这意味着,您可以使用单元格内对象的 "Dock "和 "Anchor "属性。当单元格的大小发生变化时,可以改变对象的大小。

打印表格

表格可以两种模式打印:

在第一种模式下,表格打印在其所属的带内,外观与设计器中的相同。在这种模式下,如果表格的宽度大于报表页面的宽度,则表格不会跨页打印。这是默认的打印模式。

第二种模式是动态模式。在这种模式下,表格在脚本的帮助下生成。在此过程中,生成的表格可能不同于初始表格,就像FastReport准备的报表不同于报表模板一样。在动态模式下,如果表格不适合在报告页面上显示,则可以将其分割成不同的页面。

在动态模式下,表格不会被打印在放置它的带子上。取而代之的是,表格本身会生成一组带,其中包含所生成表格的部分内容。这种工作模式有以下限制:

  • 切勿在表格下方或附近放置其他物体。取而代之的是使用 "Child "带;
  • 切勿将两个 "Table "对象放在一个带中。

让我们详细了解一下动态模式。

 
这种模式与编程有关,需要报表开发人员具备更高

表格的形成是在脚本的帮助下完成的。为了创建脚本,请选择 "Table "对象,在 "Properties "窗口中单击 "Events"按钮并双击 ManualBuild 事件:

fastreport

一个空的事件处理程序就会被添加到报告代码中:

在这种模式下,源表被用作模板。在事件代码中,您可以根据需要多次打印源表中的行和列。在此过程中,将形成结果表,其中可包含无限数量的行和列。如果在报告页面中无法容纳,则可以将表格分割成不同的页面。

打印表格时,将使用 "Table "对象的以下方法:

MethodParametersDescription
PrintRowint index打印指定索引的行。行号从0开始。
PrintColumnint index打印指定索引的列。列编号从0开始。
PrintRowsint[] indices打印表格的若干行。
PrintRows-打印表格的所有行。
PrintColumnsint[] indices打印表格的若干列。
PrintColumns-打印表格的所有列。
PageBreak-在打印下一列或下一行之前插入分页符。

打印表格可使用以下方法之一:

第一种方法 - 从上到下打印,然后从左到右打印。这种方法更适合行数不固定的表格。您必须按照以下顺序调用这些方法:

  • PrintRow(行索引);
  • 一次或多次调用 PrintColumn(column index) 或 PrintColumns(columns indices) 方法打印指定的列;
  • 或调用一次 PrintColumns() 方法打印所有列;
  • 重复该序列以打印表格中所有需要的行。
表格的每一行必须包含相同数量的列。在使用 PrintColumn(int index) 和 PrintColumns(int [] indices) 方法时,请记住这一点。

第二种方法 - 从左到右打印,然后从上到下打印。这种方法更适合打印列数不固定的表格。您必须按照以下顺序调用这些方法:

  • PrintColumn(列索引);
  • 一次或多次调用PrintRow(行号)或PrintRows(行索引)来打印指定的行;
  • 或者调用一次PrintRows()方法打印所有行;
  • 重复上述顺序,打印表格中所有需要打印的列。
表格的每一列必须包含相同数量的行。在使用 PrintRow(int index) 和 PrintRows(int [] indices) 方法时,请记住这一点。

违反调用打印方法的顺序会导致在执行报表时出错。其中一个错误是试图使用以下代码打印表格:

Table1.PrintRows();  Table1.PrintColumns()

这种方法顺序是不正确的。您应从 PrintRow 或 PrintColumn 方法开始打印表格。

打印复杂页眉

这里我们讨论的是包含跨单元格的表头。当打印包含跨单元格的表格的行或列时,单元格的尺寸会自动增大。我们将在下一个示例中进行演示:

fastreport

private void Table1_ManualBuild(object sender, EventArgs e)
{// printing row 1 and columns 0, 0, 0, 1Table1.PrintRow(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(1);// printing row 1 and columns 0, 0, 0, 1Table1.PrintRow(1);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(1);
}

我们将创建一个ManualBuild事件处理程序,它将打印第一列3次,第二列1次:

我们在每一行中打印了相同数量的列。如果违反这一规则,我们将得到意料之外的结果。

执行该代码的结果如下:

 />

如图所示,标题单元格被自动跨过。我们将使代码更复杂一些,以便打印两组列:

private void Table1_ManualBuild(object sender, EventArgs e)
{// print 0 row and two groups of 0, 0, 0, 1 columnsTable1.PrintRow(0);// group 1Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(1);// group 2Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(1);// print 1 row and two groups of 0, 0, 0, 1 columnsTable1.PrintRow(1);// group 1Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(1);// group 2Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(0);Table1.PrintColumn(1);
}

当我们运行报告时,我们将看到以下结果:

当使用以下代码打印第二列时:

Table1.PrintColumn(1);

页眉结束,继续打印第一列开始新的页眉:

// group 2
Table1.PrintColumn(0);
使用总数

在 "Table"对象的动态模式下,支持以下全部功能:

FunctionParametersDescription
SumTableCell cell返回单元格中包含的数值之和。
MinTableCell cell返回单元格中数值的最小值。
MaxTableCell cell返回单元格中数值的最大值。
AvgTableCell cell返回单元格中数值的平均值。
CountTableCell cell返回包含指定单元格的行数。
在普通打印模式下(非动态),这些功能无效。

要使用合计函数,请将其置于表格的单元格中。如以下函数计算名为 "Cell1 "的单元格中包含的值之和:

[Sum(Cell1)]

在此过程中,我们将分析位于当前单元格(我们正在其中计算总和)上方和左侧的所有单元格。

表格布局

动态生成的表格可在页面间自动分割。这种行为由表格的 "Layout "属性控制。您可以选择以下值之一:

ValueDescription
AcrossThenDown表格先横后竖
DownThenAcross表格先下后上。
Wrapped宽表格被包裹并在同一页面渲染。
http://www.dinnco.com/news/22658.html

相关文章:

  • 江门网站建设推广平台广东东莞疫情最新消息
  • 个人网站开发计划书怎么开发一款app软件
  • 长春高铁建站网络运营师资格证
  • wordpress 默认头像 本地seo推广软件代理
  • 东莞做网站建设网站建设杭州
  • 自己可以建立网站吗品牌推广战略
  • android手机开发seo关键词排名怎么提升
  • 美橙网站注册站长工具收录查询
  • 广告设计案例网站冬镜seo
  • 大型网站 div网站营销策略有哪些
  • 网站建设成功案例宣传国家市场监管总局
  • 怎么做网站设计程序上海排名seo公司
  • 中国建筑工业出版社seo的基本工作内容
  • vue做的网站百度抓取品牌营销策略研究
  • 代理网络游戏平台深圳排名seo
  • 济南做网站最好的单位网上推
  • 做图片的网站企业培训平台
  • 克隆网站怎么做后台权重查询
  • 挂号网站制作百度风云排行榜官网
  • 网站备案ip网站建站流程
  • 海淘网站入口网络推广平台几大类
  • pageadmin授权和免费的区别西安网站seo工作室
  • 中国新闻发布seo关键词推广
  • 教做发绳的网站企业培训十大热门课程
  • 北京社工委网站微信群建设小程序设计
  • 网站页面优化方案外链怎么发
  • 利川网站建设中国品牌策划公司排名
  • 莱芜建设局网站营销策略有哪些方面
  • java可以做微信网站么5118站长工具箱
  • 广州网站建设工程广州网站外包