Foxtable(狐表)用户栏目专家坐堂 → 11月21日大更新


  共有30496人关注过本帖树形打印复制链接

主题:11月21日大更新

帅哥哟,离线,有人找我吗?
狐狸爸爸
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
11月21日大更新  发帖心情 Post By:2009/11/20 17:32:00 [显示全部帖子]

一、最重要的改进在于窗口打印
1、窗口控件增加了一个另起一页(NewPage)属性,设为True,在打印此控件的时候,将另起一页。
2、窗口中的Table增加了一个最大行数(MaxRows)属性,设为一个大于0的整数,将自动换页打印Table,每页行数由MaxRows属性决定
3、不管是直接打印表,还是通过窗口打印,利用DrawCell事件绘制的单元格图形,都可以打印出来了
4、经过这次改进,窗口打印可以便利地设计多页报表,某种程度上能代替专业报表了。


二、增加了一些属性和方法

Table增加的属性

DefaultRowHeight

整数型,返回或设置默认的行高,单位为像素


示例


将订单表的默认行高设为24个像素:

Tables("订单").DefaultRowHeight = 24



RowHeaderVisible

逻辑型,是否显示行号列。


示例


隐藏产品表的行号列

Tables("产品").RowHeaderVisible = False


AllowClickSort

是否允许单击列标题排序。
在默认情况下,单击列标题会选定整列,按住Ctrl键,单击列标题,则根据该列排序。
如果将AllowClickSort属性设为True,那么单击列标题会直接排序,无需按住Ctrl键。


示例


Tables(
"产品").AllowClickSort = True



Col增加的属性:

UsetBuildInEditor

逻辑型,是否使用内置输入器。


示例


Tables(
"订单").Cols("日期").UsetBuildInEditor = True


 

AllowDirectType


逻辑型,是否允许用户直接输入不在列表项目中的内容。
必须在设置ComboList属性之前,设置AllowDirectType
属性,否则无效。


示例


Tables(
"订单").Cols("客户").AllowDirectType = False
Tables(
"订单").Cols("客户").Combolist =
"CS01|CS02|CS03|CS04"


AllowTypeAssistant

逻辑型,是否启用输入助手。
必须在设置ComboList属性之前,设置AllowTypeAssistant
属性,否则无效。


示例


Tables(
"订单").Cols("客户").AllowTypeAssistant = True
Tables(
"订单").Cols("客户").Combolist =
"CS01|CS02|Cs03|CS04"


GetComboListString的新语法:


GetComboListString(ColumnName,Filter, Sort)


ColumnName:列名称,从此列中提取不重复的值。
Filter:     可选参数,指定一个条件表达式,只返回符合此条件的值。
Sort:       可选参数,指定排序列,如果省略,则根据取值列排序,通常无需设置。

窗口增加三个动态增加Table的方法:

CreateSQLTable(Name, SqlText , ConnectionName)
CreateSQLQuery(Name, SqlText , ConnectionName)
CreateTable(Name, TableName, IsCopy)


例如:

e.Form.RemoveControl("Table1")
Dim t As WinForm.Table
t = e.Form.CreateTable("Table1","表A",true)
t.SetBounds(12,12,500,340)
e.Form.AddControl(t)
e.Form.Controls("TabControl1").Visible = false


三:SQLGroupTableBuilder和SQLCrossTableBuilder的分组可以使用表达式列了,也可以利用多列关联增加表,从某种意义上来说,这两个统计工具几乎是无敌的了。

SQLGroupTableBuilder的Groups属性增加了一个AddExp方法,用于增加表达式分组列:
AddExp(Name, Expression)
AddExp(Name, Expression,Caption)

SQLGroupTableBuilder的HGroups属性增加了一个AddExp方法,用于增加表达式分组列:
AddExp(Name, Expression)
AddExp(Name, Expression,Caption)

SQLGroupTableBuilder的VGroups属性增加了一个AddExp方法,用于增加表达式分组列:
AddExp(Name, Expression)
AddExp(Name, Expression,Pattern)

SQLGroupTableBuilder和SQLCrossTableBuilder的Totals属性增加了AddExp方法,用于增加表达式统计列:

AddExp(Name, Expression)
AddExp(Name, Expression, Caption)
AddExp(Name, Expression, Aggregate)
AddExp(Name, Expression, Caption, Aggregate)

 

原来通过Exprs增加表达式统计列的方法不能再使用,请注意.

示例,下面的统计,不管是分组列还是统计列,都是表达式形式:

Dim b As New SQLCrossTableBuilder("统计表1","订单")
b.HGroups.AddExp("产品","Right(产品,2)") '根据产品分组
b.VGroups.AddExp("月份","Month(日期)","{0}月")
b.Totals.AddExp("数量", "数量/10000") '对数量进行统计
b.Build '生成统计表
Maintable = Tables("统计表1") '打开生成的统计表

另添加多列关联表的示例:
 

Dim b As New SQLGroupTableBuilder("统计表1","表A")

Dim Cols1() As String = {"第一列","第二列"}

Dim Cols2() As String = {"第一列","第二列"}

b.AddTable("表A",Cols1,"表B",Cols2) '添加统计表

[此贴子已经被作者于2009-11-23 9:44:09编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/11/23 0:33:00 [显示全部帖子]

以下是引用实话实说在2009-11-21 22:54:00的发言:
开发版和商业版怎么区分呢?

1、下载地址不同

2、商业版的发布按钮无效。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/11/23 8:33:00 [显示全部帖子]

以下是引用实话实说在2009-11-23 8:20:00的发言:
我已经购买了开发版(11.6版),问题是在哪更新?看23楼



原地址重新下载。


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2009/11/23 9:27:00 [显示全部帖子]

肯定可以的,都一样的地址

 回到顶部