問題タブ [dbgrid]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - TMS の DBAdvGrid タブを作成し、標準の Delphi DBGrid のように挿入する方法は?
TMS Software の DBAdvGrid は、DB 対応の StringGrid です。機能が満載で気に入っていますが、機能が多すぎる場合もあります。標準の DBGrid のデフォルトの動作と同様に、タブでグリッドの終わりを過ぎたときに新しいレコードを挿入およびポストできるようにするには、(デフォルトから) どのプロパティを変更すればよいですか?
ありがとう、いつものように!
delphi - dbgridからフィールドを選択します
DataSourceにリンクされている(TADOTableにリンクされている)DBGridがあります。これはすべてTADOConnectionを介して実行され、MSAccessに接続します
グリッドにはさまざまな値が含まれているので、特定のフィールドをクリックしたときに編集したいと思います。通常のテキストフィールドの更新に問題はありませんが、OLEオブジェクトを含むフィールドを編集する方法がありません。
私がやりたいのは、フィールドをクリックしたときに、[開く]ダイアログボックスを開いてファイルを選択できるようにすることです。その後、選択したファイルを、選択した行のフィールドに更新する必要があります。
どうすればこれを行うことができますか?
c++ - 計算フィールドによる DBGrid の順序
私の質問は次のとおりです。計算フィールドで DBGrid を注文するにはどうすればよいですか。C++Builder スターター エディションを使用していますが、このバージョンでは、フィールドにインデックスを作成し、列のインデックスで並べ替えるための ClientDataSet がありません。したがって、これはオプションではありません。(これを多くのスレッドで読んでください)私はTIBDataSet(以下のibds)を使用しており、データをフィルタリングしています。正常に動作します....計算された列ではなく、DB列に対して...この問題を回避する方法についてのアイデアはありますか?
java - 列レイアウトの保存/読み込みを可能にする Java DB グリッド コンポーネント
ファイルとの間で列レイアウト (シーケンス、名前、幅など) を保存またはロードできるデータベース グリッド コンポーネントを提案してください。
標準ライブラリを使用してこの機能を実装できるアプローチにも興味があります。
delphi - 編集可能な DBGrid?
私は Delphi の初心者で、次の問題について助けが必要です。フォームに編集可能な DBGrid を実装する必要があります。DBGrid は、3 つのテーブルを結合するクエリの結果を表示します。DBGrid を編集可能にすることができましたが、編集はデータベースに影響しません。DBGrid で行を挿入、編集、または削除できますが、これらの変更はデータベースに保存されません。次の設定があります。
私はおそらく何かを見逃していますが、何がわかりません。どんな助けでも大歓迎です!
delphi - DBGridで所有者の描画の異常を修正するにはどうすればよいですか?
プロジェクトの継続は次の場所で開始されました。
DBGrid(または他の同様の)列の幅をその内容に応じて自動調整/スケーリングするにはどうすればよいですか?
@alzaimarの回答を使用して、コンテンツの幅に応じて列を自動調整しましたが、幅を増やす方法を教えてくれましたが、減らす方法は教えてくれなかったので、上記のようにコードを補完しました。
したがって、下矢印キーでスクロールすると、次の図に示すように、選択した行の色が常に正しい位置にあるとは限りません。
私が間違っていることは何ですか?
delphi - 表示前にDBグリッドの内容を操作するには?
DB テーブルに圧力を格納する列があります。圧力は常に PSI として保存され、14.5 でダイビングすることで BAR に変換できます。
ユーザーは、ラジオ グループで PSI/BAR の表示を切り替えることができます。
私は a を使用していましたが、 aTStringGrid
に変換していますTDbGrid
- これは私にとってまったく新しいことです。
ユーザーが PSI/BAR を切り替えたときに、DB グリッドの表示を更新するにはどうすればよいですか? (クエリをもう一度実行するだけだと思いますか?または呼び出しquery.Refresh()
ますか?)しかし、どうすれば変換できますか?
- おそらくストアドプロシージャですが、それはやり過ぎのように思えますが、ストアドプロシージャも私にとっては新しいものです...
SELECT
私のクエリのステートメントを変更することによって?しかし、どうすればそれを行うことができますか?SELECT pressure / 14.5 FROM measurements
? またはどのように?- または、
OnBeforeXXX()
私がコーディングできるものはありますか?またはOnGetDisplayText()
、またはそのようなものですか?
これは非常に基本的なことだと確信していますが、今まで操作されていないデータを表示しているだけで、変換関数が必要になりました。グーグルは役に立ちませんでしたが、私はおそらく何を頼めばいいのかわからなかったのです。
また、列のタイトルのテキストを変更して、「圧力 (PSI)」と「圧力 (BAR)」を切り替えたいと考えています。助けてくれてありがとう。
delphi - DBグリッドでTIMEDIFF(現在)を表示するにはどうすればよいですか?
申し訳ありませんが、私はDbGridsを初めて使用します。
クエリのフィールドエディタを使用して、TIMEDIFFをキャプチャする新しいフィールドを追加し、それをDbGridの列として追加する必要がありますか?
または、フィールドエディタをスキップして、どういうわけかTIMEDIFFFを列として宣言できますか?
このテーブルでは、開始時刻、終了時刻、期間、説明の4つの列を持つDbGridが必要です(run_idは主キーであり、表示されません)。
「duration」列にデータを取得する方法について困惑しています...
[更新]データソースのクエリは
MySqlで手動で実行すると、次のようになります。
ただし、DBグリッドの対応する列は空白のままです。誰か助けてもらえますか?ありがとう。
[更新]それが助けになるなら、私はAnyDacを使用しています。クエリは、AnYDacクエリエディタを使用して実行すると、MySqlおよびDelphiIDEで時差を含むすべてのフィールドを生成します。
唯一の問題は、実行時にDBグリッドに表示されないことです。設計時にDBグリッドをダブルクリックすると、列が正しくなります。FielName
プロパティはに設定され、上記duration
のクエリによって再調整されます。データベースには存在しませんが、クエリによって計算されます。それはどういうわけか問題でしょうか?
[Aaaaaaaargh !!!]誰かが私のコードを「改善」し、実行時にプログラムでクエリのテキストを設定しようとしました(SELECT * FROM test_runs)
したがって、設計時のクエリを上書きします!!データベーステーブルにduration
フィールドがないため、何も表示されませんでしたDBグリッド。
言葉が出て、声が上がって、今はあなたの時間を無駄にしてしまったことをお詫びしなければなりません。ごめん。
delphi - DBグリッド-最初の列ではなく、最初の行にタイトルを表示できますか?
5回の測定でMIN()、AVG()、MAX()を表示したいと思います。
私の画面の領域を考えると、水平方向よりも垂直方向にDGグリッドを表示する方がはるかに優れています。
その逆ではなく、2列15行のDBグリッドが必要です。
しかし、どのようにしてテキストを最初の列に入れるのでしょうか(例:「Measurement1MIN()」)?左側に15個のTLabelがある1x15のテーブルではなく、DBグリッドを使用したいのですが、データベースに「列(実際には行)のタイトル」を保存したくありません。
私がこれを明確に説明したことを願っています-そうでない場合は説明を求めてください-そして誰かが助けてくれることを願っています。
delphi - DB グリッド: ある行の現在の行の列を別の行のインデックスとして使用する方法は?
質問のタイトルが十分に明確かどうかわかりませんが、自由に編集してください。
基本的に、2 つのデータベース テーブルを反映する 2 つの DB グリッドがあり、各グリッドには 1 つが表示されます。
ユーザーが最初のテーブルの行を選択すると (それを と呼びましょうoders
)、最初のテーブルの選択された行の列に一致する行の詳細で 2 番目のテーブルを更新します。
たとえば、そのテーブルorders
に列customer_id
があり、2 番目のテーブル ( と呼びましょうorder_details
) に、その顧客からのすべての注文の詳細 (行ごとに 1 つの注文) を入力したいとします。
2 つの@ データソース、クエリ、および接続を 2 つの s に接続できますが、SQLTDbGrid
のコーディング方法に行き詰まっています。order_details
の SQLorders
は だけSELECT * from orders
ですが、他の?
私は何かが欲しいSELECT * from order_details WHERE cutomer_id=<orderQuery>.currentRow.FieldByName("customer_id").AsInteger
- しかし、私はそれを行う方法がわかりません...
誰かが Delphi コードで私を助けることができますか?
また、その関係を設定すると、DB グリッドで新しい行を選択すると、orders
DB グリッドが自動的に更新されorder_details
ますか? または、そのためのコードを追加する必要がありますか。
Psbooks
タグがもうないことはわかっていますが (これ以上は残念です)、DB 対応コントロールのプログラミングの基礎を説明する優れた本を誰かお勧めできますか? 私は明らかにそれが必要です。ありがとう