非 Boolean 类型的字段使用DBCheckBox |
|
pcplayer99
尊榮會員 發表:146 回覆:790 積分:632 註冊:2003-01-21 發送簡訊給我 |
我试用 FireBird 数据库,发现它没有Boolean类型的字段。这个可以用SmallInt类型的字段来代替。 那如果程序里有DBCheckBox来让用户钩选,该怎么办?以前真没留意过这问题。请教了MSN上的一位朋友,才知道 DBCheckBox.ValueChecked 和 DBCheckBox.ValueUnChecked 是拿来干这个事的。 DBGridEh里可以自动地让Boolean类型的Field显示为CheckBox,那么,如果Field的类型是 Integer 或者 String,该怎么办呢? 在 DBGridEh 里,如果一个字段对应的值不是Boolean类型,则:(以下操作针对 DBGridEh)
1. 首先,生成固定字段。
2. 设置该字段的属性 CheckBoxes 为True (如果这个字段本身是Boolean类型,则这个属性默认就为True了。)
3. 设置这个字段的 KeyList属性,这是一个StringList值。第一串字符为要设置为True的字符。第二串则代表False的字符。假设对应的字段是Integer类型,设置第一个字符串为"1",第二个为"0",则运行时钩上这个CheckBox就会对相应字段写入1,去掉钩则写入0。
完成以上步骤,就可以让DBGridEh对任意类型字段都可以用CheckBox来表达了。比如:男/女。 附件是简单的DEMO的Source for Delphi7
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |