掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
手動でStringGridにデータベースを取り込むには (ID:34479)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
初歩的な質問ですいません。 StringGridの学習をしています。 環境はWinXPSP3、TurboDelphi2006(無償版)です。 DBGridを使わずに、StringGridにデータベースを読み込む練習をしています。 練習の目的は、SQLでデータをソートして、 それをStringGridに読み込み、編集し、 Tableでそれを保存、 をしようと思っています。 以下は練習のソースです(練習なので、Tableを使ってデータベースをロードしてしまってますが^^;)。 テーブルはサンプルのDBDEMOSのAnimalsで試しています。 過去ログ等を参考にして、 StringGridに書き込むまでは成功したのですが、 CELLの幅の調整や、データベースのテーブルの現在のレコードを次の行に移す方法等が解らず、以下で停滞しています。 どなたかお教えいただけると助かりますm(__)m。 以下が問題のコードです。 procedure TForm1.Button1Click(Sender: TObject); var i:integer; begin StringGrid1.ColCount := table1.FieldCount +1; StringGrid1.RowCount := i +1; for i := 0 to table1.RecordCount - 1 do begin table1.RecNo := i; //↑ここが問題の部分です。現在のレコードの位置を返すだけで、レコードの現在位置を変えるものでは無いみたいです。 StringGrid1.Cells[1,i+1] := table1.FieldByName('NAME').AsString; StringGrid1.Cells[2,i+1] := table1.FieldByName('SIZE').AsString; StringGrid1.Cells[3,i+1] := table1.FieldByName('WEIGHT').AsString; StringGrid1.Cells[4,i+1] := table1.FieldByName('NAME').AsString; StringGrid1.Cells[5,i+1] := table1.FieldByName('AREA').AsString; StringGrid1.Cells[6,i+1] := table1.FieldByName('BMP').AsString; StringGrid1.RowCount := StringGrid1.RowCount + 1; end; table1.Close; StringGrid1.RowCount := StringGrid1.RowCount - 1; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.