社区
PowerBuilder
帖子详情
请教:怎样时数据窗口的一行变为不可编辑?
benshe
2001-12-26 03:11:39
并确保添加下一行,是可以编辑的?
...全文
218
24
打赏
收藏
请教:怎样时数据窗口的一行变为不可编辑?
并确保添加下一行,是可以编辑的?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
24 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
benshe
2001-12-28
打赏
举报
回复
不是啦,我的嘴太笨了。。。
因为a列的edit或者dddw属性,是根据其他列动态改变的。此行为dddw,下行为edit时,上一行的a列中的值就显示成id而不是name了。
leaf_cq
2001-12-28
打赏
举报
回复
a列edit的style type为什么要动态改变呢?
Leony
2001-12-27
打赏
举报
回复
小弟我以前是这样做的,增加的时候把每列的protect设成0,确定之后又把它设成1,多麻烦,现在好了,设if(isRowNew(),0,1)就行了,谢谢!谢谢1
poppyboy
2001-12-27
打赏
举报
回复
用这个:dw_1.setitem(row,"id",value)
benshe
2001-12-27
打赏
举报
回复
look
leaf_cq
2001-12-27
打赏
举报
回复
因为你的data column是id,所以你的每条记录的id的值等于a的值,所以你可以直接使用
a的值就可以了
benshe
2001-12-27
打赏
举报
回复
是这样的,a列在数据窗口的dw1,a列设置为dddw,其对应的数据窗口对象,有id和name2列。
(数据窗口对象设计时隐藏id,但让其只显示name.)
此dw1是用来生成查询用的where子句的,即查询时用a列的id.
我也不知道我说明白了没有。
benshe
2001-12-27
打赏
举报
回复
look
leaf_cq
2001-12-27
打赏
举报
回复
既然data column 是id,display column 是name,那么显示当然是name了,至于a列的查询和
a列的edit style为edit是一样的,如(设a列的列名为a,类型为numeric):
sle_1.text = 'a > 200 and a < 1000'
------------------------------------
dw_1.SetFilter( '' )
dw_1.Filter( )
dw_1.SetFilter( sle_1.text )
dw_1.Filter( )
不知道我对你的“用id查询”是否理解正确
benshe
2001-12-27
打赏
举报
回复
data column 是id,
display column 是name
即想显示name,用id查询。
leaf_cq
2001-12-27
打赏
举报
回复
还是你自己的方法管用:)
不知道你dw_1的a列中的数据类型是和id一样呢还是和name一样(也就是你的dddw选定后,你的data column和display column分别是选的哪一列呢?)
azjiao
2001-12-26
打赏
举报
回复
to benshe(小笨蛇) :
谢谢,我也正找答案。可巧,找到了。
benshe
2001-12-26
打赏
举报
回复
还有一个问题:
dw_1中a列为dddw,对应一个数据窗口对象,包括name,id。
显示name,用id查询。
我怎样用settext确保 a列上显示的是name而不是id??
benshe
2001-12-26
打赏
举报
回复
thank you you all.
我在 每列的 protect 里写 "if(getrow()<>rowcount(),1,0)" ,就可以了。
leaf_cq
2001-12-26
打赏
举报
回复
还有什么问题和特殊的要求吗?
benshe
2001-12-26
打赏
举报
回复
uupp
leaf_cq
2001-12-26
打赏
举报
回复
方法根据你的规范用户动作的不同而不同,给个一般例子:
dw_1的需要保护的列的 protect Expressions: if( isRowNew(), 0, 1 )
定义instance变量:
long il_newrow = 0
在“新增”按键中:
if il_newrow > 0 then
if dw_1.GetItemStatus( il_newrow, 0, Primary! ) = New! then // 不允许插入空列,可根据自己不同的要求而定
dw_1.setrow( il_newrow )
dw_1.ScrolltoRow( il_newrow )
dw_1.SetFocus( )
return
else
dw_1.SetItemStatus( il_newrow, 0, Primary!, DataModified! )
end if
end if
il_newrow = dw_1.InsertRow( 0 )
dw_1.ScrollToRow( il_newrow )
dw_1.SetFocus( )
……
return
在“删除”及相类似操作脚本中加入:
long ll_row
……
ll_row = dw_1.GetRow( )
if ll_row = il_newrow then il_newrow = 0 // ★★★
dw_1.DeleteRow( ll_row )
……
return
poppyboy
2001-12-26
打赏
举报
回复
在每个Column中,比如这样:if( isNull(Column),0, 1 )
poppyboy
2001-12-26
打赏
举报
回复
在Expressions中的protect中设定条件
benshe
2001-12-26
打赏
举报
回复
是要添加新一行前,把当前行变为不可编辑的。
加载更多回复(4)
高手过招:
请教
:变量到底是在编译的
时
候初始化的,还是在运行的
时
候初始化的?
请教
:变量到底是在编译的
时
候初始化的,还是在运行的
时
候初始化的? [问题点数:40分,结帖人learnc2015] https://bbs.csdn.net/topics/391832733 收藏帖子 回复 learnc2015 结帖率 62.5% 变量到底是在编译的
时
候初始化的,还是在运行的
时
候初始化的? 如下函数:居然调用两次打印出来的值分别是1和2,非常不好理解 如果按照C...
windows
窗口
分析,父
窗口
,子
窗口
,所有者
窗口
(本文尝试通过一些简单的实验,来分析Windows的
窗口
机制,并对微软的设计理由进行一定的猜测,需要读者具备C++、Windows编程及MFC经验,还得有一定动手能力。文中可能出现一些术语不统一的现象,比如“子
窗口
”,有
时
候我写作“child window”,有
时
候写作“child”,我想应该不会有太大影响,文章太长,不一一更正了) 问题开始于我的最近的一次开发经历,我打算把程序的一部分界面
Windows
窗口
分析,父
窗口
,子
窗口
,所有者
窗口
Windows
窗口
分析,父
窗口
,子
窗口
,所有者
窗口
最近面试java后端开发的感受:如果就以平
时
项目经验来面试,通过估计很难——再论面试前的准备 亡羊补牢,面试
时
如果发现回答不好,该怎么办? [UWP]在应用开发中安全使用文件资源
请教
:WCF速...
最近面试java后端开发的感受:如果就以平
时
项目经验来面试,通过估计很难——再论面试前的准备 在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活,第二Java基础要好,第三最好熟悉些分布式框架,我相信其它公司招初级开发
时
,应该也照着这个标准来面的。 我也知道,不少候选人能力其实不差,但面试
时
没准备或不会说,...
解决:IIS 假死,运行一段
时
间服务器上所有网站打不开,必须要重启服务器才行,重启IIS都没用。怎么解决,解决方案
tip:我服务器问题是 每个5-6天后,服务器上的所有网站都不能访问,重启IIS无用,必须重启服务器! 后,
请教
周华伟周经理后,找到解决方案如下: 第一原因: 这是程序池造成的,网站运行
时
,造成服务器CPU使用过大,引起的IIS假死。已知造成原因,就可以找到解决办法! 第二解决: IIS》应用程序池》打开后在右侧
窗口
“选择网站程序池”(例如www.xiaoxiongyoupin.com)...
PowerBuilder
1,077
社区成员
66,438
社区内容
发帖
与我相关
我的任务
PowerBuilder
PowerBuilder 相关问题讨论
复制链接
扫一扫
分享
社区描述
PowerBuilder 相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章