MSCommによりシリアル通信でデータを受信してそのデータは
変数にいてれいます。
標準モジュールでMSCommのOnCommで受信イベント時に変数にその
値をいれることはできたのですが、受信した時のみ
フォーム側でその変数の値を使って処理したいのですがどうすれば
いいのか分からず困っております。
流れとしては
データ受信→変数へ格納→フォーム側で受信したら変数の値を取得
→その値で各処理を行う
という感じです。
>変数にいてれいます。
って何?
変数に入れれています。?
>標準モジュールでMSCommのOnCommで受信イベント時に・・・
フォームモジュールのことだと仮定して
>変数にその値をいれることはできたのですが、受信した時のみ
>フォーム側でその変数の値を使って処理したいのですが・・・
とりあえずパブリック変数にでも入れといたら?
質問の仕方が悪かったみたいですいません。
ちょっと内容かわったかもしれませんが
現在、RS232cで通信を行っています。PCとある機器を接続しています。
1つのexeファイルにフォームを複数作ってフォームごとにMSCommコントロール
を配置してます。
この時、フォームAでデータ受信処理をしてフォームBに遷移した時
フォームBでは受信ができません。ある機器をリセットすれば受信
できます。
ここでMSComm専用のフォームをおきそれを読み込んでからアクティブなフォーム
を読めばいけると思ったんですが、
MSCommのフォームをあらかじめ読んでそのフォームでの受信した結果を
受け取る方法が分からなかったので質問しました
>フォームAでデータ受信処理をしてフォームBに遷移した時
>フォームBでは受信ができません。ある機器をリセットすれば受信
>できます。
フォームAのポートを閉じてフォームBでポートを開き直せばよさそうだが。
標準モジュールでpublic変数作ってそこに受信結果を格納するのはダメなの?
>フォームAのポートを閉じてフォームBでポートを開き直せばよさそうだが。
これは試してみましたが駄目でした。
MCommを貼り付けたコントロールを1つ作り、そこから他のフォームを
呼び出すことにしました。
フォームごとにMSCommコントロールを貼り付けての処理は
私がやっている環境では上手くいきませんでした。
いろいろアドバイス頂いてありがとうございました。
解決を付け忘れてました・・・
編集 削除