掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DBGridの一覧表示について (ID:48920)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
あだち様、早速のご回答ありがとうございます。 早々に教えて頂いた内容で試してみましたが ソースは抜粋で実際には下記のようにDBGridのタイトルをカスタマイズしていまして インデックスエラーが出ましたので以下のソースの様に変更してみました。 その結果 一回目の表示では、DBGridの表示は今まで通り、ほぼ一瞬に表示されて何の問題も無いのですが 二回目の表示では、DBGridの表示がされませんでした。 そこで何か再表示のために何か必要なのかと思い IBquery1.EnableControlsの後に(※※) IBquery1のrefreshとか色々加えてみましたが状況は変わりません。 何か他に行う処理があるのでしょうか? 申し訳ありませんが、よろしくお願いします。 //-------------------------------------------------------- // 変更追加したソース procedure TForm.Button1Click(Sender: TObject); begin IBquery1.DisableControls; try try DBGrid_init; // 二回目の表示 except raise; end; finally IBquery1.EnableControls; //※※ end; end; // 一覧表示 function TForm.DBGrid_init:integer; var sql_str :string; begin sql_str := 'select * from tablexx where code_no>0'; IBdatabase1.Connected := false; IBquery1.Close; DataSource1.DataSet := IBquery1; 〜略〜 IBquery1.SQL.Clear; IBquery1.SQL.Add(sql_str); DBGrid1.DataSource := DataSource1; IBquery1.Open; // 変更追加したソース if (DBGrid1.Columns.Count>1) then begin // インデックスエラー回避 DBGrid1.Columns[ 0].title.caption := 'No'; DBGrid1.Columns[ 1].title.caption := '名称'; DBGrid1.Columns[ 2].title.caption := '日付'; end; //--(※リスト作成)---------------------- // DBGridの行毎全データが直接見れないために対応するためのリストです。 DBG_list.Clear; with IBquery1 do begin first; while not EOF do begin DBG_list.Add(IntToStr(IBQuery1.FieldByName('code_no').AsInteger)); Next; end; end; //-------------------------------------- IBquery1.last ; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.