掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ADODataSet1.IndexFieldNamesを書き換えるのが原因? (ID:27231)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
(1)ListBoxに表示したテーブル名を選択することによって、DBGridにテーブル内容を表示するように、 ADOConnection,ADODataSet,DataSource,DBGridを接続しました。 procedure TForm1.ListBox1Click(Sender: TObject); var S:string; begin S:=ListBox1.Items[ListBox1.ItemIndex]; //tablename ADODataSet1.Close; ADODataSet1.CommandText:='select * from '+S; ADODataSet1.open; end; (2)下記procedureでDBGridの固定行をクリックすることによってソートできるようにしました。 procedure TForm1.DBGrid1TitleClick(Column: TColumn); begin if ADODataSet1.IndexFieldNames =Column.Field.FieldName then ADODataSet1.IndexFieldNames:=Column.Field.FieldName+' DESC' else ADODataSet1.IndexFieldNames:=Column.Field.FieldName; end; プログラムを実行し、ListBoxからテーブル名を選択しソートもできることを確認しました。 しかし、引き続いてListBoxから別のテーブル名を選択しますと、 「要求された名前、または序数に対する項目がコレクションで見つかりません」と怒られます。 ADODataSet1.IndexFieldNamesを書き換えるのが原因のように思われます。 対処法を教えてください。(WinXp,Delphi7,MSDE2000)
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.