| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1545 人关注过本帖
标题:VFP6.0的表格控件引用出错!
只看楼主 加入收藏
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
结帖率:62.5%
收藏
已结贴  问题点数:20 回复次数:12 
VFP6.0的表格控件引用出错!
表单中两个按钮COMMBUTON,一个表格GRID,表格共8列,其中的第二列中我用的是COMBO BOX控件。目的是用GRID显示表记录,其表为自由表。
  GRID.(下拉式組合框)的屬性如下:
    ROWSOURCETYPE=“5”   &&数组
    ROWSOURCE="A_PARTNO"  &&已定义好

  按钮1的关键代码如下:
  &GR1LJ.RECORDSOURCE="TEMP_BOM"
  &GR1LJ.COLUMN1.CONTROLSOURCE="TEMP_BOM.项目"
  &GR1LJ.COLUMN2.CONTROLSOURCE="TEMP_BOM.料号"
  &GR1LJ.COLUMN1.TEXT1.READONLY=.T.  &&无论何时都不出错
  &GR1LJ.  &&再次执行出错,原因是找不到COMBO1找不到!!!!

  
  按钮2的关键代码:
  &GR1LJ.VISIBLE=.F.
  
  特别说明:
 
  此段代码在表单第一次执行时,是不出錯的,完全能夠達到設計要求,但是在不釋放此表單的前題下點擊按鈕2,再點按鈕1,則出如上標示的錯誤!

  我查看了一些工具書,有提到表格除非發生了INIT事件,不然其中的控件是不能夠引用的!可是問題是:
  1.如果讓表格再次發生INIT事件?(表單載入時已經發生過了).
  2.如果是以上的問題,為何TEXT類的控件又可以引用,單單就是COMBO BOX控件用不了呢?

  以上請各位點解.

2.pdf (68.55 KB)
搜索更多相关主题的帖子: 表格控件 
2009-08-25 11:34
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11857
专家分:43421
注 册:2006-5-13
收藏
得分:4 
会不会是宏替换出了问题?
表格中的下拉列表框需要每次通过按钮来设定“只读”属性吗?

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2009-08-25 13:43
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
收藏
得分:0 
1.不可能是宏的问题,如是查宏的问题,第一次执行就会发生错误。
2.因为下拉式组合框会在查询时置为“唯读”,所以每次新增或编辑都必须重设为“读写”。
2009-08-25 14:12
sd_tysd
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:81
专家分:319
注 册:2009-7-23
收藏
得分:4 
回复 楼主 GEORGECHIN
thisform.GR1LJ.COLUMN1.TEXT1.READONLY=.T.
thisform.GR1LJ.
2009-08-25 15:27
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
收藏
得分:0 
回复 4楼 sd_tysd
那個"GR1LJ"是一個變量,是用宏來執行的,所以這一段沒有錯的,因為第一次執行是完全能夠達到設計要求的(如附件中的第一個截圖)
2009-08-25 15:34
茵梦湖
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:31
帖 子:545
专家分:2180
注 册:2009-4-25
收藏
得分:4 
估计是你对column2的属性 设置不全或有误~~~我特意用事件代码"appe blan"和"insert blan before"测试了一下,运行顺利,combo没有产生你所说的问题~~~见图~

Snap3.jpg (85.36 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2009-08-25 16:47
GEORGECHIN
Rank: 2
等 级:论坛游民
帖 子:43
专家分:16
注 册:2009-8-25
收藏
得分:0 
回复 6楼 茵梦湖
1.我用的不是數據環境,而是直接加載的數據表(自由表)
.第一次運行沒有任何錯誤(重點).只有在不釋放表單的情況下執行"放棄"操作后再執行"新增"時才報錯.
3.放棄按鈕中僅有將表格的VISIBLE屬性設為.F.
所以您不妨也加兩個按鈕,一個是建立一個自由表,然后綁定在表格上,即表格的RECORDSOURCE按鈕中加入,而不是在屬性中設定..
2009-08-25 19:21
sd_tysd
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:81
专家分:319
注 册:2009-7-23
收藏
得分:0 
<b>回复&nbsp;7楼&nbsp;GEORGECHIN</b><br>COMBO1.READONLY=.F.只对控件有效,不能对单元格有效。只读可以运行中设置,按钮没问题,这里附件不能上传。

[ 本帖最后由 sd_tysd 于 2009-8-25 21:24 编辑 ]
2009-08-25 21:21
sd_tysd
Rank: 5Rank: 5
等 级:职业侠客
威 望:1
帖 子:81
专家分:319
注 册:2009-7-23
收藏
得分:0 
回复
COMBO1.READONLY=.F.只对控件有效,不能对表格列有效,如果本列设只读,控件没必要设只读。只读可以运行中设置,按钮没问题。

[ 本帖最后由 sd_tysd 于 2009-8-25 21:26 编辑 ]

回复.rar (2.17 KB)
2009-08-25 21:23
茵梦湖
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:31
帖 子:545
专家分:2180
注 册:2009-4-25
收藏
得分:0 
不是很明白你的意思~~~下述代码通过测试~~~用2个表(表a/表b)分别临时加载,"放弃"/"新增"交替点击,都无影响~~~供参考~~


init, column2加上如下属性
          CurrentControl = "combo1"
          Sparse = .f.
         
         
         
proc cmd1.click  && 新增
     TEMP_BOM =iif(int(rand()*10)%2=0,"表a","表b")
     thisform.grd1.visible=.t.
     thisform.grd1.RECORDSOURCE=""
     thisform.caption =" >> 当前表为: &temp_bom"
     sele 1
     use &temp_bom excl     
     thisform.grd1.RECORDSOURCE="&TEMP_BOM"
     thisform.grd1.column1.CONTROLSOURCE="&TEMP_BOM..项目"
     thisform.grd1.column2.CONTROLSOURCE="&TEMP_BOM..内容"
     thisform.grd1.COLUMN1.TEXT1.READONLY=.T.
     thisform.grd1.COLUMN2.READONLY=.F.
proc cmd2.click  && 放弃
     thisform.grd1.visible=.f.

[ 本帖最后由 茵梦湖 于 2009-8-25 22:10 编辑 ]

放弃.JPG (17.65 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册


当前为表a.jpg (78.71 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册


当前为表b.jpg (85.74 KB)
图片附件: 游客没有浏览图片的权限,请 登录注册
2009-08-25 21:41
快速回复:VFP6.0的表格控件引用出错!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028344 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved