PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
9071 | 99/11/04 17:20:24 | RE(2):PBの開発になれない By てとらぽっと |
9039 | 99/11/04 01:12:05 | RE(1):PBの開発になれない By M.M |
9036 | 99/11/03 02:19:23 | PBの開発になれない By セイジ |
カテゴリ:その他
日付:1999年11月04日 17:20 発信者:てとらぽっと
題名:RE(2):PBの開発になれない
セイジさん、こんにちは。
>私は、PB開発歴約半年です。
>その前は約5年ほど汎用機で開発をしていました。
>そのせいかどうかわかりませんが、なかなか、コーディングがうまく進みません。
>特にウインドウ間のデータのやり取りなど、なかなかイメージ出来にくく、はかどりません。
どうやって勉強するかは M.Mさんのコメントに同意します。
「ウインドウ間のデータのやり取り」というポイントに絞って言えば、
COBOLの変数と同じ感覚でグローバル変数を使ってしまわないようにしてください。
あるウィンドウが持つ情報なら、そのウィンドウのインスタンス変数に保持すべきです。
またコントロールの情報は、下手に変数に持たずに、いちいちになりますが
そのコントロールのプロパティ等を調べたほうがユーザーが見ているものと
内部処理とで不一致を起こすことがありません。
それと、グローバル変数とMDIフレーム以外は、
必ずしもそのオブジェクトが存在するとは限りませんから
使う前にはそれが有効であるか、必ず確認します。
という前提で、【特定のウィンドウ間】のやりとり、
window_A から window_B の情報を知りたい時は、
if IsValid(window_B) then
window_Bのインスタンス変数の値、DW、コントロールの状態を調べる(データを得る)。
window_Bの関数・イベントを呼び出し、window_B に処理をさせる。
end if
というのが多くなってくると思います。
ウィンドウを開く時に情報を与えておく場合は、
OpenWithParm() などで必要なパラメータを渡しておきます。
呼び出し元のウィンドウをパラメータにしてしまう【大味な仕様】も見かけますが、
面倒でも構造体を作って必要なパラメータだけを与えるようにしましょう。(笑)
構造体にはオブジェクト型も含められますから、
必要なら DW などのコントロールをパラメータにすればいいのです。
こんなもんでヒントにでもなれば…。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS (記載なし)
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.