设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7068|回复: 11

[求助] tablefile的find问题

  [复制链接]
发表于 2011-9-8 14:35:36 | 显示全部楼层 |阅读模式
在我的模型中,我在track设置method,把进入track的transporter保存到tablefile(*行,1列,object型)中,当transporter离开track时,设置method查找tablefile中的transporter记录,把正行记录cutrow掉。9 Y, K5 Q3 [+ a, F4 L6 C
现在的问题是我使用语句0 {9 H( T5 s2 `/ [
if tablefile.find(`[1,1]..`[1,*],@) then0 c% N; N: e" `
删除行逻辑
2 t& Q- T" B- E; `$ U2 [end;/ N5 S% i' a! k" A2 U6 h; X2 h- q
我发现find结果总是出错,明明打开tablefile之后可以看见那个transporter,但tablefile.find(`[1,1]..`[1,*],@)的返回值却不一定是true; i2 T, K, F8 v6 t, u# c; g
1 P$ p7 C! J; C' e
调试的时候,把tablefile.find(`[1,1]..`[1,*],@)粘贴到表达式两行位置,结果发现这条语句在同一时刻,一行显示true,一行显示false,我实在不知道是怎么回事,请大家有时间帮忙解惑一下,不甚感激。
, _% |5 I# a+ g$ q. b/ V
/ h+ C7 _" o% B2 R8 i: Z; e+ R另外把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 : Y) ]) e$ a$ b5 ?( U
我试了一下,没问题啊,可以参考附件中的模型
9 k1 _& s, T" d' b3 R
我这边好像还是有些问题,我在您的模型上调了一下还是不行
- i% A% q/ K  g2 g1 i! y麻烦您看看,在您那里的运行正常吗?" ^2 L# s1 U1 g  c( J4 d, _" d
我这是从veryCD上下载的破解版,不会是破解的问题吧?

本帖子中包含更多资源

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

x
 楼主| 发表于 2011-9-9 11:05:20 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-9 11:05 编辑 # U6 r$ D" B) Y$ F/ T
linlin3353 发表于 2011-9-8 15:37 1 H, ?( z, j5 M1 U
我试了一下,没问题啊,可以参考附件中的模型
# r3 Q( h1 f, V( b( `- |" m3 N$ K

+ T' ^5 s* o' c% U- W: n这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧

本帖子中包含更多资源

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

x
发表于 2011-9-10 14:06:36 | 显示全部楼层
pqxx 发表于 2011-9-9 11:05 * {) v0 }# w/ G. C
这个附件是我这边的运行视频,用screen2exe录制了,所以是exe格式,绝不是病毒。麻烦您给看看吧 ...

" E( Q0 M( ^- W看了一下,我也困惑了,时而对时而错。再研究研究吧。。
( @6 W2 U+ E6 _看看论坛里们其他大侠怎么决绝吧。
发表于 2011-9-10 14:18:20 | 显示全部楼层
貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。
 楼主| 发表于 2011-9-11 11:27:51 | 显示全部楼层
linlin3353 发表于 2011-9-10 14:18
# ]) ~, t) O. {' b貌似,如果不设断点进行单步调试的话,模型运行就是正常滴。。
5 `+ S5 Y' p2 I) T/ `
在您那边运行也是如此吗?
" i( l( e: S3 P9 ~$ M还是非常感谢啊
发表于 2011-9-12 18:21:09 | 显示全部楼层
我曾遇到过LZ这个问题
5 t. Y* L- T- j0 D1 X0 MLZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前,一般得设置光标的初始位置,如果你在tablefile[1,3]找到了你要找的文本“true”。当再一次执行method时,你的光标是从2 u7 h0 S. |2 @& U5 b: l* `
tablefile[1,3]开始寻找,比如在tablefile[1,5]找到” 。所以就是说你两次运行同一个程序,结果出现不同。所以程序里面必须要设置光标的起始点。
 楼主| 发表于 2011-9-13 09:30:06 | 显示全部楼层
Inwater 发表于 2011-9-12 18:21 4 {7 h3 y! @6 s& S- U3 `
我曾遇到过LZ这个问题+ q7 X0 Y/ A! b# L* \# B8 ?/ N
LZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...

  z# G& `, Q" {6 N在find语句之前加上4 {; R9 G& |! H0 S
tablefile.CursorY:=1;9 |, x' x4 A3 f8 u. G6 Y
tablefile.CursorX:=1:, H! R' T% u' K  n$ n
之后还是不对,不知道怎么回事。
# c: t* K  @- M$ R" J% y. S$ [我把tablefile改成cardfile试了试,除了第一个离开track的mus搜索不到之外,别的都可以找到,但新的问题又出来了,当我设置断点调试程序的时候,cardfile里面记录的数据会自动丢失。比如一开始我打开cardfile之后,发现里面有5行数据,看看method之后再回过头来看,发现前两行的数据没了,就像执行了cutrow一样,过一会儿再看,全没了,成空表了。9 A, L" \% y; ^' q# W
是不是emplant的安装有问题呢?
发表于 2011-9-13 14:16:44 | 显示全部楼层
pqxx 发表于 2011-9-13 09:30
; B" K$ a+ q2 [0 a+ o在find语句之前加上
8 U3 C8 x  ^8 e/ S) p% ]tablefile.CursorY:=1;4 i6 n" Y1 O4 s
tablefile.CursorX:=1:

$ P0 F$ W0 r0 u0 t3 G- T应该和安装没问题,估计还是程序有问题。
* q) Q& A* y6 s% |$ r3 S! i在看看软件自带的帮助文件吧,估计是对函数的理解不对。
 楼主| 发表于 2011-9-14 08:24:59 | 显示全部楼层
本帖最后由 pqxx 于 2011-9-14 13:05 编辑
* U* D- N0 Q# F/ O
Inwater 发表于 2011-9-12 18:21 2 J) A8 }! l& @/ k1 N6 k* H
我曾遇到过LZ这个问题: J5 O- B; z/ g; T; I" \
LZ可以HELP:tablefile.find;仔细看里面的意思。当执行method时,在表格里寻找之前 ...
$ J  |2 ]4 y0 }

& N* d- p" ~" ]' H# l使用cardfile,在find前面加上cardfile.cursor:=1就没问题了
1 |* U. l' Y, _/ g我再试试tablefile啊,先谢谢啦- b2 i$ B) ]- P
在tablefile前面加上tablefile.cursorX:=1和tablefile.cursorX:=1也OK了
 楼主| 发表于 2011-9-14 15:01:00 | 显示全部楼层
taoyifei2000 发表于 2011-9-14 13:41 ; C( R' \4 q( |3 {
刚看到消息,看你已经解决了,修改的模型就不发了,祝贺你,其实就是每次循环光标要初始化一下。 ...
& Y" v7 Q) K! @
谢谢啊,版面上这个板块的高手最热心肠啦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-21 19:52 , Processed in 0.015770 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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