- ベストアンサー
Data gridについてなのですが、、、
またまたお世話になります<(_ _)>VB6にて、社内の生産計画補助ソフトを作ってる素人です(>_<)パーツ名と個数を入力し、追加ボタンを押すと、アクセスに追加されていくようにしました。しかし、これでは何てパーツを追加したかそこではわかりませんので、これはマズイと思い、Data gridの存在を知り、見よう見まねで表示させようと思いました。しかし、実際には一旦メインフォームに戻って登録フォームに入ると表示されてるのですが、そのフォームで追加しても反映されません(>_<)これを追加してすぐにData gridに反映させる方法ってあるのでしょうか?追加ボタンおしたらすぐにData gridに表示させたいのですが、わかりません(>_<)できるのかどうかすらわかりません。Data grid以外でも良い方法があるのなら教えてください<(_ _)>
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 私がやっているのは、SQL文での検索結果をMSFlexGridに表示させるということです。 Data gridは使用したことないので、MSFlexGridの使用例を参考までに。 再描画というのは、任意のタイミングでSQL文を発行して、その結果を表示させるという意味で、接続しなおすということではありません。 テーブルの中身がそのまま表示されるのではなく「自分で文を発行して表示」ということをしています。 たとえば、form_load時に"SELECT * FROM emp"の結果をグリッドに表示させているとしたら、データを入力した時にもう一度、SQLを発行してその結果を表示させるということです。
その他の回答 (2)
- morika
- ベストアンサー率20% (1/5)
mdbへの接続環境を書かれていないので、どうかわかりませんがNo.1の方のようにMSFlexGridを使い追加ボタンをクリック時に、同時に抽出をおこなってはどうですか?例えば、「入力日」、「パーツ名」等色々考えられますが。
補足
おはようございます。御回答ありがとうございます。接続環境はADODBのProvider=Microsoft.Jet.OLEDB.4.0ってやつです。サンプルの本のをそのまま使いました(>_<)No1の方にも書きましたが、どのような方法があるのかもよくわかりません。テーブルのデータをそのまま持ってくると一番簡単かなと思いそうしてました。フォームをロードした際に、テーブルのデータをDataGridに表示させます。前回の状況を知りたいのと、途中になってもいいようにと思ったので。で、そのフォームに新規、追加、戻るってボタンつけました。新規で、テーブルのデータを削除します。パーツ名、個数を入れて、追加ボタンでテーブルに書き込みます。それがDataGridに即反映されると思っていました(>_<)繋がってんだからそうだろうと・・・MSFlexGridだとできるのでしょうか?
- skink
- ベストアンサー率38% (7/18)
こんにちは。 私はMSFlexGridを使用していますが、再描画しています。 ただ、描画の処理は時間がかかるので、データ数が多いとストレスになります。 ので、データ数や使い方に応じて描画のタイミングを考えた方がよいです。 んー。あんまり参考になりませんですね。すみません。
補足
MSFlexGrid!?そんなのもあるんですねぇ(>_<)何も知らなくて。。これは、DataGridと同じで、テーブルの情報をまるまる引っ張ってこれるのでしょうか?なおかつ、追加していったら、再描画(これは一旦データベースを閉じて開き直すという作業でしょうか?)すると、すぐに反映されるのでしょうか?素人ですいません<(_ _)>
お礼
わかりました!!!常識であるような専門用語がわからないので、何のことかわからずにやっているので、申し訳ありませんでした<(_ _)>フォームロードでまさしくSQLを使ってました(>_<)とてもわかりやすい説明ありがとうございます<(_ _)><(_ _)><(_ _)>