TDBGridで現在の行が見つかっていますか?DelphiのTDBGridで現在の行を検索
答えて
私はあなたの質問を理解しているかどうかはわかりませんが、私は答えを試みるでしょうし、あなたが求めているものではないかどうかを明確にすることができます。
TDBGridはDataSourceに関連付けられているため、現在の行はデータソースの現在の行と同じです。プライマリキー値またはRecNoプロパティを調べて、現在のレコードがどのレコードかを判断することによって、DataSourceを照会することができます。
レコード数と現在のレコードを提供するためにデータソースに依存したくない場合(たとえば、リモートサーバー上で単方向カーソルを使用しているため)、基礎となるグリッドコントロールを使用できます。
同様のStackOverflow質問へのthis answerを参照してください。
あなたは正しいことを言っ始めましたが、あなたが示したリンクはレコード数の取得方法を示していますが、最も重要なもの(RecNoまたはRowまたはCurrentRowなど)はグリッドから直接取得できません。申し訳ありません –
@Carlos: 'RowCount:= TDummyGrid(MyDBGrid).RowCount'の代わりに' Row:= TDummyGrid(MyDBGrid).Row'を書くのを止めていますか?ちょっとした思考が必要ですね... – mghie
まあ...グリッドに色を変えたいのですが、ROWプロパティはカーソルの変更の間に "永続的"ではありません。つまり、カーソルを移動すると選択を変更すると、同時に表示可能なすべての行のROWプロパティが変更されます。それぞれの行を個別に、現在選択されている行とは独立して識別する方法が必要です。今はリンクされたデータセットのRecNoを使用していますが、一方向のデータセットではこのプロパティは役に立ちません。あなたが見ることができるように、思考のちょっとしたビットが必要ですが、あなたは怠け者でした。申し訳ありません... –
あなたはこのようにそれを行うことができます。
1 - (これはあなたがプライベートメソッドにアクセスできるようになります)のTDBGridのコピーであるローカルクラスを定義します。
type
THackDBGrid = class(TDBGrid);
2 - そして、あなたはキャストすることができますあなたのローカルに定義されたクラスに、とのようにプライベートメソッドから引っ張っ:
function TfrmMain.GetFieldValue(colnum : integer): string;
begin
Result := THackDBGrid(grdMain).GetFieldValue(colnum);
end;
または、行番号を取得するには:
function CurrentRowNumber: integer;
Result := THackDBGrid(grdMain).Row;
end;
このテクニックは他の状況でも役に立ちますが、クレジットを請求することはできません。 I got it from here。
- 1. 無料パスカル、のTDBGrid、現在の行を取得し
- 2. Delphi TDBGrid選択行取得値
- 3. Select2現在のアイテムリストを検索
- 4. 弾性検索:現在実行中のスナップショット操作を取得
- 5. "このビューを検索"フルテキストを検索し、現在のビューでクエリを送信
- 6. 検索でテキストを検索し、現在の結果のみを強調表示
- 7. 行が挿入されていないDelphi TDBGrid
- 8. Delphi BPLの検索パス
- 9. jQueryを使用してasp:GridViewで編集中の現在の行を検索
- 10. FirebirdとDelphiでのフルテキスト検索
- 11. delphiのサブメニュー項目の親を検索
- 12. jqGridでの現在のページ番号の検索
- 13. Nunjucksで現在のコンテキストを検索するには?
- 14. 現在のディレクトリでhelm-grep-do-git-grepを検索します
- 15. Delphiのメモを検索しますか?
- 16. Delphi - 大きなTMemoでテキストを検索
- 17. npmを実行すると現在のディレクトリのバイナリが検索されます
- 18. タイムブレイクの配列内の現在の時間を検索
- 19. 現在実行中のブラウザの現在のWebアプリケーションを検出します。
- 20. 現在のjQuery DataTableに列の検索を適用します
- 21. 現在のディレクトリへの絶対パスを検索する*
- 22. Website Redesign現在のGoogle検索の位置を維持する
- 23. iPhone:今後60日間の現在の日付を検索
- 24. 現在のオートフィルタVBAラインに日付フィルタの検索を追加
- 25. PHP - 現在のフォルダとサブフォルダ内のファイルを検索する
- 26. テーブル内の現在のユーザーを検索するクエリ? php、sql
- 27. 現在の月を検索してそれにペーストの合計
- 28. Path.GetFullPath関数は現在のプロジェクトのみを検索します
- 29. ディレクトリを検索する現在のディレクトリを取得します
- 30. エンティティFrmwkのPB:現在のコンテキスト内の「追加」エンティティの検索
私はあなたの質問に明確化のビットを提供する必要があると思う、クエリの行またはDBGridの行を意味するのですか? –