| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2423 人关注过本帖
标题:奇怪的问题又来了
只看楼主 加入收藏
Bunny008
Rank: 1
等 级:新手上路
帖 子:185
专家分:6
注 册:2011-7-27
收藏
得分:0 
回复 7楼 TonyDeng
右键单击BOOK3的时候,那两个messagebox出现的是BOOK_List.Book3.Value和应该是2的内容,因为3没东西啊。。。奇怪


[ 本帖最后由 Bunny008 于 2012-4-20 00:28 编辑 ]
2012-04-20 00:26
Bunny008
Rank: 1
等 级:新手上路
帖 子:185
专家分:6
注 册:2011-7-27
收藏
得分:0 
回复 9楼 sdta
已经在上面的附件了,数据表不方便传啦
2012-04-20 00:27
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用Bunny008在2012-4-20 00:26:27的发言:

右键单击BOOK3的时候,出现的是BOOK_List.Book3.Value和应该是2的内容,因为3没东西啊。。。奇怪

说明这个时候BOOK_List.Book3控件的值有问题,不是需要的东西。

授人以渔,不授人以鱼。
2012-04-20 00:28
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 12楼 Bunny008
WORD文档版本太高了,打不开。既然不方便上传,那就无能为力了。

坚守VFP最后的阵地
2012-04-20 00:30
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
那家伙,有.txt不用,偏要用word。

授人以渔,不授人以鱼。
2012-04-20 00:31
Bunny008
Rank: 1
等 级:新手上路
帖 子:185
专家分:6
注 册:2011-7-27
收藏
得分:0 
回复 13楼 TonyDeng
我总是觉得那个Seek前面的那句set order to有问题。。
2012-04-20 00:31
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
程序代码:
PROCEDURE abc
*-------------------------------------------------------------------------------------
PARAMETER EB
LOCAL ln_Poscopy
LOCAL lc_BookCopy
ln_PosCopy = INT(VAL(ALLTRIM(SUBSTR(EB.Name,4)))-1)
lc_BookCopy = "BOOK_LIST.Book"+ALLTRIM(STR(ln_PosCopy))+".Value"

=Grid_abc(BOOK_LIST.Name, &lc_BookCopy,EB.Name)
RETURN
ENDPROC
* ------------------------------------------------------------------------------------
PROCEDURE Grid_abc
* ------------------------------------------------------------------------------------
PARAMETERS lc_FormName, lc_BOOK, lc_Pos
LOCAL lc_FieldName, lc_FieldName1, lc_FieldName2
LOCAL i
LOCAL ln_TotPage, ln_Pos
LOCAL ln_MaxPage

ln_TotPage = 0
ln_Pos = INT(VAL(ALLTRIM(SUBSTR(lc_Pos,4))))
SELECT("book1")
ln_MaxPage = In_Page

lc_FieldName = lc_FormName+"."+lc_Pos+".ReadOnly"
IF &lc_FieldName
    RETURN
ENDIF
lc_FieldName = "Book_List.Book"+ALLTRIM(STR(ln_Pos))+".Value"
IF !EMPTY(lc_BOOK) .AND. ln_Pos <> 1
    lc_FieldName1 = "BOOK_List.P"+ALLTRIM(STR(ln_Pos))+".Value"
    IF &lc_FieldName1 <> 0
        RETURN
    ENDIF
    lc_FieldName1 = "BOOK_List.P"+ALLTRIM(STR(ln_Pos-1))+".Value"
    IF &lc_FieldName1 <> 0
        &lc_FieldName = lc_BOOK
    ELSE
        RETURN
    ENDIF
ELSE
    lc_FieldName1 = "BOOK_List.P"+ALLTRIM(STR(ln_Pos))+".Value"
    IF &lc_FieldName1 <> 0
        RETURN
    ENDIF
ENDIF
IF !EMPTY(&lc_FieldName)
    FOR i = 1 TO 20
        lc_FieldName1 = "BOOK_List.Book+ALLTRIM(STR(i))+".Visible"
        IF &lc_FieldName1
            lc_FieldName1 = "BOOK_List.P"+ALLTRIM(STR(i))+".Value"
            ln_TotPage = ln_TotPage + &lc_FieldName1
        ENDIF
    ENDFOR

    SELECT ("author")
    SET ORDER TO author_no
    IF SEEK(&lc_FieldName)        &&老是找不到&lc_FieldName,直接跳到ELSE执行
        ln_TotPage = ln_TotPage+rl_Page
        IF ln_TotPage >= ln_MaxPage
            BOOK_List.Status.Value = STATUS_2
            &lc_FieldName = ""
            pl_Clear = .T.
            pc_WinName = lc_FormName
            RETURN
        ELSE
            BOOK_List.TotPageText.Value = ln_TotPage
        ENDIF
        lc_FieldName1 = "BOOK_List.P"+ALLTRIM(STR(ln_Pos))+".Value"
        &lc_FieldName1 = rl_Page
        pa_BookList[ln_Pos, 1] = SUBSTR(&lc_FieldName,1,7)
        pa_BookList[ln_Pos, 2] = SUBSTR(&lc_FieldName,8,3)
        pa_BookList[ln_Pos, 3] = &lc_FieldName1
        pa_BookList[ln_Pos, 4] = .F.
        pa_BookList[ln_Pos, 5] = .T.
        IF ln_Pos < 20
           
            lc_FieldName = "BOOK_List.Book"+ALLTRIM(STR(ln_Pos+1))+".Visible"
            &lc_FieldName = .T.
            lc_FieldName = "BOOK_List.Book"+ALLTRIM(STR(ln_Pos+1))+".ReadOnly"
            &lc_FieldName = .F.
            lc_FieldName = "BOOK_List.P"+ALLTRIM(STR(ln_Pos+1))+".Visible"
            &lc_FieldName = .T.
            lc_FieldName = "BOOK_List.P"+ALLTRIM(STR(ln_Pos+1))+".Value"
            &lc_FieldName = 0
            lc_FieldName = "BOOK_List.Delete"+ALLTRIM(STR(ln_Pos+1))+".Visible"
            &lc_FieldName = .T.
        ENDIF
        lc_FieldName = "BOOK_List.Book"+ALLTRIM(STR(ln_Pos))+".ReadOnly"
        &lc_FieldName = .T.
        lc_FieldName = "BOOK_List.Book"+ALLTRIM(STR(ln_Pos))+".ForeColor"
        &lc_FieldName = RGB(0,0,255)

        lc_FieldName = "BOOK_List.Delete"+ALLTRIM(STR(ln_Pos))+".Enabled"
        &lc_FieldName = .T.
    ELSE    &&错误出现在这里
        BOOK_List.Status.Value = STATUS_1
        pl_Clear = .T.
        pc_WinName = lc_FormName
    ENDIF
ENDIF

RETURN
ENDPROC

授人以渔,不授人以鱼。
2012-04-20 00:32
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
以下是引用TonyDeng在2012-4-20 00:31:26的发言:

那家伙,有.txt不用,偏要用word。
还是VFP基础太差了。

坚守VFP最后的阵地
2012-04-20 00:32
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
以下是引用Bunny008在2012-4-20 00:31:54的发言:

我总是觉得那个Seek前面的那句set order to有问题。。

如果这个语句总有问题,就不会在某个BOOK时才出问题。没办法知道这个程序的运作逻辑和具体操作是什么,你这样掩藏数据,别人很难给你查错。

授人以渔,不授人以鱼。
2012-04-20 00:34
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
回复 19楼 TonyDeng
关闭索引是在什么地方创建的。程序不完整,只有找神仙了。

[ 本帖最后由 sdta 于 2012-4-20 00:36 编辑 ]

坚守VFP最后的阵地
2012-04-20 00:35
快速回复:奇怪的问题又来了
数据加载中...
 
   



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

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