メモに選択したDBGridレコードレコードを表示する方法はありますか? このタイプのコードを試しましたが、これは列のタイトルを示し、フィールドのテキストを表示します。メモにDBGrid行が表示される
procedure TForm6.btnShowClick(Sender: TObject);
var
l: String;
p: Integer;
i: Integer;
m: String;
begin
m:='';
for p := 0 to dbGrid1.Columns.Count - 1 do
m:=m+(format('%s',[dbGrid1.Columns[p].Title.Caption]))+lm;
Memo1.Lines.Add(m);
if Dbgrid1.SelectedRows.Count>0 then
begin
with dbgrid1.DataSource.DataSet do
begin
l:=' ';
GoToBookMark(tBookmark(dbGrid1.SelectedRows[i]));
for p := 0 to Dbgrid1.Columns.Count - 1 do
begin
l:=l+(format('%s',[dbgrid1.Columns[p].Field.AsString]));
end;
Memo1.Lines.Add(l) ;
end;
end;
end;
end.
私はそれは、フィールドのテキストを使用しますが、それが動作しないように[dbgrid1.Columns [P] .Field.AsString]を変更しようとしました。注 - これは私が使用したいと思うテンプレートコードです
メモで単に選択されたレコードを表示する簡単な方法はありますか?
申し訳ありませんが、あなたの質問には意味がありません。まず、dbgrid1.Columns [p] .Field.AsString] **は、タイトルではなく列セルの値を返します。第二に、Sqlはあなたが求めているものと何をしていますか? – MartynA
_currentの行_と_の選択された行の違いを知っていますか? 'SelectedRows'プロパティは、_selected_としてマークされた行のリストを返します。これは、基になるデータセットの現在のレコードに対応する_current行と同じではありません。ここで 'SelectedRows'を本当にしたいのか分かりません。 –
あなたは 'GoToBookMark(tBookmark(dbGrid1.SelectedRows [i]));'の 'i'インデックスをどこにも設定していないようです。 –