PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
5317 | 99/03/04 16:18:22 | RE(2):PB5.0.01: getrow()の結果の変化 By honda |
5314 | 99/03/04 12:59:45 | RE(1):PB5.0.01: getrow()の結果の変化 By リエッチ |
5312 | 99/03/04 11:04:35 | PB5.0.01: getrow()の結果の変化 By honda |
カテゴリ:スクリプトの記述
日付:1999年03月04日 12:59 発信者:リエッチ
題名:RE(1):PB5.0.01: getrow()の結果の変化
hondaさんこんにちは。リエッチと申します
>ウィンドウのオープンにて、以下を記述しました。
>
> dw_1.Modify(\"A.Protect=\'1\'\")
> dw_1.Modify(\"B.Protect=\'1\'\")
> dw_1.Modify(\"C.Protect=\'1\'\")
> messagebox(\"getrow()\",string(dw_1.getrow())) ← (1)
> dw_1.Modify(\"D.Protect=\'1\'\")
> messagebox(\"getrow()\",string(dw_1.getrow())) ← (2)
> dw_1.ScrollToRow ( 1 )
>
>(1)の結果=1
>(2)の結果=0
これは、行全てのカラムが「保護」されてしまったために、
現行の行の行き場所が無くなってしまったせいだと思われます。
修正可能なカラムを全てスクリプトで「protect保護」してしまうと
こういった事が起きるようです。
いろいろ試してみる価値はあるとおもいます
OPENでプロテクトしているからには、あるタイミングで
編集可能にするんですよね?
だったら、最初からカラムのタブ順序を「ゼロ」にしておいて、
編集するタイミングがきたら、タブ順序に数値を入れるのはどうでしょう?
私はそうやってやっています。
>となり、ScrollToRowでdw_1のRowfocuschangedが起動してしまいます。
>カラムDのmodifyをコメントすると起動しません。
>dw_1には1行以上が存在します。この違いはどこからでてくるのでしょうか?
ヘルプにも載っていますが、ScrollToRow関数は、「rowfocuschangedイベント」を
引き起こすと書いてありますので、これはしょうがないでしょう
コメントにするとイベントが起動しないのは、現行の行が「ゼロ」になってしまった
ためだと思います。
編集可能カラムを全て「protect」にすると、現行行がとれなくなるのかな?
私は今までタブ順序や背景色などで、入力可能/不可能を制御していたので
気付きませんでした (^o^;)
protectを使ったとしても、カラム1個/2個だけだったので
GETROWで現行行はとれていたし・・
検討お祈りします
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS INFORMIX Net 5
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS INFORMIX-OnLine 5.00
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.