搭建论坛《搭建之星》论坛数据库交流 → [学习]字段值为“复选框”的实现


  共有2172人关注过本帖树形打印

主题:[学习]字段值为“复选框”的实现

帅哥哟,离线,有人找我吗?
admin
  1楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 搭建官方
等级:管理员 帖子:5504 积分:20561 威望:9 精华:5 注册:2002-4-5 17:08:42
[学习]字段值为“复选框”的实现  发帖心情 Post By:2007-8-1 9:25:22

在录入数据时,有些字段的值采用“复选框的形式”表现出来更加直观,(形如图1所示)。那么这么样的字段如何进行录入呢?

此主题相关图片如下:
按此在新窗口浏览图片
图1
在搭建之星中并没有直接提供类似于“复选框”形式的字段件,我们可以通过常用构件中的“复选框组构件的‘选择状态’属性”来实现这样的功能。
首先,设置该字段(如“爱好”)的数据库类型为“文本型”,字段长度根据实际需要设置。
接下来,判断该字段的复选项内容是否相对固定,如果是,那么直接在复选框组构件的“选择列表”属性罗列出来就可以了。否则,可以建立一个选项数据表,以便用户可根据实际情况增减。如图2所示。

此主题相关图片如下:
按此在新窗口浏览图片
图2
下边,我们以建立“选项数据表”方式为例。在数据库中有两个数据表,表1为“基本情况表”,表2为“爱好选项”表。
所需构件以及构件在窗口摆放,如图3所示

此主题相关图片如下:
按此在新窗口浏览图片
图3
属性设置:
ADO数据表1的表名称为“基本情况表”,操作数据属性“甲字段名称”为“爱好”,活动属性为“真”。
ADO数据表2的表名称为“爱好选项”,操作数据属性“甲字段名称”为“爱好列表”,活动属性为“真”。
记录循环的数据集属性为“ADO数据表2”。
复选框组的列数属性设为“4”。

事件设置:
当“创建窗口”时,开始执行记录循环的方法“开始循环”。
在“循环过程”中,事件设置如图4所示

此主题相关图片如下:
按此在新窗口浏览图片
图4
解释:由于是通过“爱好选项”数据表,得到复选框组的选项。因此,需要把“爱好选项”中的每一条记录读出来,结果形如“体育┌绘画┌书法┌写作……┌音乐”。请参考图2中左图的“属性设置”。
当第一次循环时,读取变量X(这时的X为“空”),得到非打印字符“CR”(表现形式为“┌”),得到甲字段内容(这时甲字段内容为“体育”),把这些字符进行连接,连接的结果赋给变量X。因此,在第一次循环后,变量X为“空┌体育”;
当第二次循环时,变量X(这时X为“空┌体育”),得到非打印字符“CR”,得到甲字段内容(这时甲字段内容为“绘画”),把这些字符进行连接,连接的结果赋给变量X。因此,在第二次循环后,变量X为“空┌体育┌绘画”;
依此类推……
“结束循环”后,事件设置如图5所示

此主题相关图片如下:
按此在新窗口浏览图片
图5
解释:可以设想,当循环结束时,变量X为“空┌体育┌绘画……音乐”。那么显然,前两个字符“空┌”是程序运行的必然结果,但并不是我们需要的,因此,从第二个字符后,开始截取,结果赋给复选框组的“选择列表”属性。
在ADO数据表1“提交之前”,事件设置如图6所示

此主题相关图片如下:
按此在新窗口浏览图片
图6
解释:也许,这才是本节最重要的设置,是通过复选框组的“选择状态”属性赋值给“基本情况表”的“爱好”字段的。
当ADO数据表1“记录移动之后”,事件设置如图7所示

此主题相关图片如下:
按此在新窗口浏览图片
图7
解释:该事件用于浏览查询上一条记录的复选项的录入内容。


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

[学习]字段值为“复选框”的实现








签名