预定义组件 wxGRID 用来显示一个表格,并且需要 wxCAPTION 、 wxCOLUMN 、 wxSECTION 来配合定义显示样式。表格的数据来自 wxQUERY 对象,而 wxQUERY 则是从 wxDATASOURCE 来查询数据,必须先定义数据的连接和来源, wxDATASOURCE 和 wxQUERY 属于无界面对象,只负责完成数据查询并提供给所需要的 OBJECT ,其不仅可以提供给 wxGRID ,还可提供给 wxTEXT 等,所有 OBJECT 都可通过 wxQUERY 来获取数据。
OBJECT wxDATASOURCE aSource
{
private:
aSource.Database= MSSQL
aSource.Server= "172.1.1.1"
aSource.Login= mastudio
aSource.Pwd= 123
aSource.Timeout= 5
}
OBJECT wxQUERY aQuery
{
aQuery.wxDATASOURCE= aSource
aQuery.wxRECORDSET= aRecord
aQuery.Sql= "SELECT Name, Model, Num, Package,color FROM grid"
aQuery.Split= 9
aQuery.Page= 1
}
以上完成对数据库 SQL Server 的连接,并且读取到表 grid 中的 5 个字段,记录按照 9 条进行分页,当前显示第 1 页。切记: wxQUERY 必须早于 wxGRID 定义。

OBJECT wxGRID aGrid
{
aGrid.wxCAPTION= aCaption
aGrid.wxCOLUMN= aColumn
aGrid.wxSECTION= aSection
aGrid.wxQUERY= aQuery
aGrid.Banna[]= 0, 0x3333FF, 0xEEAAEE
aGrid.Pen[]= 1, 0x000000
aGrid.Rect[]= 6,55,210,260
aGrid.Prompt[]= 205, 230, 18, 32
}
定义表格的抬头部分,包括字体大小颜色、对齐方式、高度以及背景颜色。
OBJECT wxCAPTION aCaption
{
aCaption.Titlel= " 数据库表格数据显示 "
aCaption.Font[]= 18,0xFFFFFF // 头字体大小颜色
aCaption.Align= left // 文字对齐方式
aCaption.Height= 25 // 头部分高度
aCaption.Background= 0xff6068 // 背景颜色
}
定义表格的列部分显示方式,列名、列数、各列宽度、列对齐方式、列颜色(可选)。
OBJECT wxCOLUMN aColumn
{
aColumn.Count= 4 // 一共 4 列
aColumn.Height= 20 // 列区高度
aColumn.Field[]= " 名称 ", " 型号 ", " 数量 ", " 包装 " // 字段名
aColumn.Width[]= 60, 50, 40, 68 // 各列宽度
aColumn.Font[]= 14, 0x2042ff // 字体大小颜色
aColumn.Align[]= center, center, center, center // 对齐方式
aColumn.Color[]= 0xFF0000, 0x00FF00 // 颜色
aColumn.Background= 0x3ce7e9 // 背景
}
其中 aColumn.Color[] 参数是可选项,用来设置对应列数据的显示颜色,其颜色设置作用于整个数据区指定的列。
定义表格内容区域的显示模式、背景颜色、字体大小颜色、对齐方式。
OBJECT wxSECTION aSection
{
aSection.Background= 0xffBBCC
aSection.Font[]= 14, 0x000000
aSection.Align[]= left, left, right, right, right
aSection.Dyestuff= 3
}
其中 Dyestuff=3 可选项来设置显示颜色为第 3 列数据,表示将采用 wxQUERY 中第 3 列数据作为颜色值来显示行数据,每一行数据的显示颜色值都采用 wxQUERY 中第 3 列对应行数据。
第四页
|