图库的使用

元件的变形

自定义属性

按钮

编辑选中的图形

动态创建图形

可移动标签

定义连接点

读写图形属性

编辑线条顶点

调用Windows API函数

调用Visual Graph函数

脚本回调控件的事件

运行状态鼠标拖动图形

表格

明细式报表

制作对话盒

制作菜单

ActiveX在VC6中的使用

ActiveX在Delphi6中使用

ActiveX在VB6中的使用

首页

明细式报表

Visual Graph制作任何报表,都需要制作模板,明细式报表的模板是bin\report.tbl,下面我们在Delphi中使用它来制作雇员薪资表。

具体做法如下:

一、在Visual Graph中新建文件,并选菜单“文件/打印设置”把打印纸显示出来,然后选择菜单“工具/视图窗口属性”,点击“打印纸作为工作区”,把文件保存成“template1.tbl”。

二、绘制表头和表格明细如下图:

三、画完后,用鼠标选中明细表格,再选择菜单“编辑/单元组”,新建单元组group1,然后保存并关闭文件。

四、在Delphi中新建应用程序,并在窗口上放置Visual Graph ActiveX控件,设置Align为alClient,铺满窗口,再放Delphi的数据库控件Table1,设置Table1的Databasename属性为DBDemos,设置TableName属性为Employee.db

五、在Delphi的FormShow中写下列代码:

procedure TForm1.FormShow(Sender: TObject);
var
i : Integer;
sheet : ISheet;
begin
vgctrl1.Run( vgctrl1.DefaultPath + 'report.tbl' );
sheet := vgctrl1.vg.ActiveSheet;
sheet.SetPropertyValue( 'template', 'C:\Documents and Settings\Administrator\桌面\template1.tbl' );
Table1.Active = true;
while not Table1.Eof do
begin
sheet.Execute( 'Append()' );
sheet.Execute( 'SetFieldValue(0,"' + Table1.FieldByName( 'Empno' ).AsString + '")' );
sheet.Execute( 'SetFieldValue(1,"' + Table1.FieldByName( 'LastName' ).AsString + '")' );
sheet.Execute( 'SetFieldValue(2,"' + Table1.FieldByName( 'FirstName' ).AsString + '")' );
sheet.Execute( 'SetFieldValue(3,"' + Table1.FieldByName( 'Hiredate' ).AsString + '")' );
sheet.Execute( 'SetFieldValue(4,"' + Table1.FieldByName( 'Salary' ).AsString + '")' );
Table1.Next;
end;
sheet.Execute( 'Build()' );
end;

明细表Report.tbl中定义了三个函数,分别是Append追加一行,SetFieldValue设置最后一行某列内容,最后调用Build生成报表。

六、调试运行,得到下面的画面: