在PB得DataWindows中使用CheckBox碰到得问题

程英杭 2005-08-01 11:21:17
我在PB中建了个DataWindows,然后选择数据源,然后在得到得数据源中,我选中其中一个,把他得Edit属性设为CheckBox,然后我在他得两个属性值中把选中设为1,没选中设为0,然后把DataWindows绑定在一个窗体中,在改窗体上放了个按钮,改按钮实现保存功能,然后我在改按钮得Click事件中加入如下语句:
if update(窗体名.dw_1,true,false) =1 then
窗体名.dw_1.resetupdate()
Commit;
else
//提示出错信息
结果运行得时候发现,改按钮只能把原先设为1得值改成0,而不能把0得值改为1,这是为什么啊?
...全文
551 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
程英杭 2005-08-02
  • 打赏
  • 举报
回复
还有我其他几个字段同样在数据库中也是Null的,还有我的语法应该是正确的,dw_1.update(trre,false)和update(dw_1,true,false)是两种不同的表现形式
程英杭 2005-08-02
  • 打赏
  • 举报
回复
那我还有其它的几个同样的CheckBox是可以不用SetItem也可以实现的阿 。就只有其中的一个不可以
jason_fox 2005-08-02
  • 打赏
  • 举报
回复
是因为数据库里面存放的是 null ,
j9dai 2005-08-02
  • 打赏
  • 举报
回复
在插入新行的代码后给checkbox赋初值
dancer 2005-08-02
  • 打赏
  • 举报
回复
checkbox设个初值
leio 2005-08-02
  • 打赏
  • 举报
回复
首先,你的语法有错误,应该是
窗体名.dw_1.update(true,false)

如果不能保存,应该是你的checkbox字段设为Not Null,datawindow不会自动帮你赋值
所以,你可以在增加新行时用setitem函数将该字段置为0。

当然,如果你先选中,再不选中,datawindow就会自动帮你赋值为0了。

或者,建表的时候,将该字段的默认值设为0也可以。
sun1976 2005-08-02
  • 打赏
  • 举报
回复
赋初值就可以了
新增时
long ll_row
ll_row=dw_1.insertrow(0)
setitem(ll_row,columnname,0)即可

当然,也可以在数据窗口的设计界面,直接给数据窗口列设置默认初始值

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧