设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5525|回复: 11

[求助] tablefile的find问题

  [复制链接]
发表于 2011-9-8 14:35:36 | 显示全部楼层 |阅读模式
在我的模型中,我在track设置method,把进入track的transporter保存到tablefile(*行,1列,object型)中,当transporter离开track时,设置method查找tablefile中的transporter记录,把正行记录cutrow掉。
- E* y$ A8 [' m2 R1 v; x, N现在的问题是我使用语句
4 x. a* F/ i- H: Mif tablefile.find(`[1,1]..`[1,*],@) then8 N0 c7 }* [& P
删除行逻辑  J" Q" Q0 E- u$ s9 S- G. s- ~
end;+ f3 }. `' q+ R- x# g5 R% E; }: D
我发现find结果总是出错,明明打开tablefile之后可以看见那个transporter,但tablefile.find(`[1,1]..`[1,*],@)的返回值却不一定是true
: v6 s: ~( Q( f3 A5 m7 r  Q
, A( ]1 t3 D: L2 t  @调试的时候,把tablefile.find(`[1,1]..`[1,*],@)粘贴到表达式两行位置,结果发现这条语句在同一时刻,一行显示true,一行显示false,我实在不知道是怎么回事,请大家有时间帮忙解惑一下,不甚感激。
8 s+ m9 n1 o0 l* _! H4 [/ [
. U6 R7 k3 ~( s/ X* q, _2 X  t$ B另外把tablefile换成queuefile之后,搜索结果到没问题,都正确了,但因为track里面的transporter有些是从入口进入,有些是用method方法从别处移动过来,所以queuefile好像不适用于模型逻辑

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2011-9-8 15:37:30 | 显示全部楼层
我试了一下,没问题啊,可以参考附件中的模型

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2011-9-9 10:57:06 | 显示全部楼层
linlin3353 发表于 2011-9-8 15:37
1 ?& Q8 L$ E2 j3 P% o$ Z5 `  e+ T我试了一下,没问题啊,可以参考附件中的模型
* A7 ^3 v, q1 k+ E3 X
我这边好像还是有些问题,我在您的模型上调了一下还是不行& d2 M2 B- w* {5 G, s; W, I
麻烦您看看,在您那里的运行正常吗?
7 q' n6 `$ t& G/ {我这是从veryCD上下载的破解版,不会是破解的问题吧?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2011-9-9 11:05:20 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-9 11:05 编辑 % A6 D, i7 g3 o, w# {
linlin3353 发表于 2011-9-8 15:37 4 }' t) j7 a% H, e5 y
我试了一下,没问题啊,可以参考附件中的模型
. ^7 }3 e$ g5 L7 U' G
. y1 j7 W& d* t7 L8 l7 D
这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2011-9-10 14:06:36 | 显示全部楼层
pqxx 发表于 2011-9-9 11:05 9 ~6 g1 v5 R0 S8 @
这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧 ...

# A4 I* ?5 x: x- e  i看了一下,我也困惑了,时而对时而错。再研究研究吧。。
( N  I! g7 ?* G" r9 p8 q& e( x看看论坛里们其他大侠怎么决绝吧。
发表于 2011-9-10 14:18:20 | 显示全部楼层
貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。
 楼主| 发表于 2011-9-11 11:27:51 | 显示全部楼层
linlin3353 发表于 2011-9-10 14:18 ! `! x  x4 V+ k+ G- N, I- E
貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。
4 J0 p' q8 T4 N  @% M
在您那边运行也是如此吗?
3 _  u' v$ _8 h6 m( ]还是非常感谢啊
发表于 2011-9-12 18:21:09 | 显示全部楼层
我曾遇到过LZ这个问题( K+ w9 @4 d1 ^! A
LZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前,一般得设置光标的初始位置,如果你在tablefile[1,3]找到了你要找的文本“true”。当再一次执行method时,你的光标是从- J6 N9 }0 u* P' k# M3 u2 j
tablefile[1,3]开始寻找,比如在tablefile[1,5]找到” 。所以就是说你两次运行同一个程序,结果出现不同。所以程序里面必须要设置光标的起始点。
 楼主| 发表于 2011-9-13 09:30:06 | 显示全部楼层
Inwater 发表于 2011-9-12 18:21
- C' n; ~. |5 }9 J我曾遇到过LZ这个问题
2 @+ M+ w/ I( N) n5 J: S7 VLZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...
" f& v5 W2 I4 B9 M
在find语句之前加上% j/ W7 g5 N, w& b  \4 x
tablefile.CursorY:=1;3 S2 O7 r: ]5 p; n9 _' D
tablefile.CursorX:=1:
, y) O# `$ ~6 q4 l5 ^0 S, N+ m+ c之后还是不对,不知道怎么回事。! l  A( O; D* k
我把tablefile改成cardfile试了试,除了第一个离开track的mus搜索不到之外,别的都可以找到,但新的问题又出来了,当我设置断点调试程序的时候,cardfile里面记录的数据会自动丢失。比如一开始我打开cardfile之后,发现里面有5行数据,看看method之后再回过头来看,发现前两行的数据没了,就像执行了cutrow一样,过一会儿再看,全没了,成空表了。
( z" x; S4 z7 a# C' F" o2 [是不是emplant的安装有问题呢?
发表于 2011-9-13 14:16:44 | 显示全部楼层
pqxx 发表于 2011-9-13 09:30 ( r/ X3 J- w5 N3 G5 ~5 d
在find语句之前加上
3 X. b/ `$ c; ?3 ^  d8 itablefile.CursorY:=1;
! \# W9 G! |3 V4 J6 j8 B/ ktablefile.CursorX:=1:

- ]# L& B6 P& F- {3 B2 L. G应该和安装没问题,估计还是程序有问题。9 W; u4 `" {8 ~
在看看软件自带的帮助文件吧,估计是对函数的理解不对。
 楼主| 发表于 2011-9-14 08:24:59 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-14 13:05 编辑 ( O/ c3 `- S8 P* w
Inwater 发表于 2011-9-12 18:21
) Z; }  f5 \- ~" Q0 l! F我曾遇到过LZ这个问题
7 P4 v% P5 K9 p* g- s8 [) WLZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...

4 z7 l" p$ m& T8 |8 f. G! M! U5 \% }: t/ I9 `
使用cardfile,在find前面加上cardfile.cursor:=1就没问题了/ f* x& N  C7 ]: u
我再试试tablefile啊,先谢谢啦9 I5 [# S8 P2 z7 k. M& I4 b+ x
在tablefile前面加上tablefile.cursorX:=1和tablefile.cursorX:=1也OK了
 楼主| 发表于 2011-9-14 15:01:00 | 显示全部楼层
taoyifei2000 发表于 2011-9-14 13:41
6 \0 c* A9 ~3 U1 [刚看到消息,看你已经解决了,修改的模型就不发了,祝贺你,其实就是每次循环光标要初始化一下。 ...
1 h7 l0 }. d* b
谢谢啊,版面上这个板块的高手最热心肠啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-7-1 08:05 , Processed in 0.018470 second(s), 16 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表