問題タブ [tstringgrid]

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.

0 投票する
0 に答える
1253 参照

delphi - TStringGridでの水平スクロールの問題

タイプTStringGridのワイドグリッドに問題があります。ユーザーがグリッドを右にスクロールして行を選択すると、グリッドは自動的に左にスクロールするため、最初の列は表示されますが、ユーザーが関心のある列は表示されません。このようなスクロールを防ぐにはどうすればよいですか。

TurboDelphi(Delphi 2006)を使用しています。

私のグリッドには、変更を加えた標準オプションがあります。

  • goColSizing = True
  • goRowSelect = True
0 投票する
2 に答える
323 参照

objective-c - Delphi にあるように、objective-c ココア フレームワークに stringgrid はありますか

Cocoa Framework に StringGrid はありますか、または Delphi のようなものを実装した人はいますか?

0 投票する
2 に答える
46337 参照

delphi - TStringGrid-「現在の/選択された」行を取得する簡単な方法はありますか?

私は長い道のりを歩き、各行をループし、からを取得TRectCellRect(col, row)、それをクエリすることStateができgdSelectedます...

しかし、現在選択されている行の行番号を取得するためのより迅速な方法はありませんか?

0 投票する
1 に答える
2568 参照

delphi - Delphi-OnKeyPressは、TStringGridがセルを新しい文字で更新する前に発生します

Delphiでコーディングし、OnKeyPressイベントハンドラーをTStringGridにアタッチします。

OnKeyPressイベントは、ユーザーが入力しているグリッドセルが、押されたキーで実際にその値を更新する前に発生します。これは明らかに問題です。ユーザーが変更したときのように、現時点でそのセルの内容が何であるかを知りたい場合です。

「ハッキングされた」ソリューションは、すべての詳細を考慮していない場合は単純です。セルから値を取得し、OnKeyPressイベントにKeyパラメーターが付属しているため、その値を最後に追加します。これで、現在の値が得られます。セルの!

誤り。ユーザーがセル内のすべてのテキスト(つまり、「foo」)を選択し、「b」と入力している場合はどうなりますか。彼らがテキストを選択したので、それは消去され、文字「b」に置き換えられます。ただし、セルの値はOnKeyPressでは「foo」として表示され、Keyの値は「b」になるため、上記のロジックにより、アプリケーションはセルに「foob」が含まれていると結論付けることができます。真実ではない。

それで。 誰かがこの問題を回避する方法を知っていますか?グリッドのコンテンツが更新された後にOnKeyPressを反応させる方法はありますか、それともハンドラーの開始時に強制的に更新する方法はありますか?ここではOnKeyUpイベントの使用を必死に避けているので、それ以外の提案をいただければ幸いです。

0 投票する
2 に答える
3428 参照

delphi - 編集と範囲選択の両方を備えた TStringGrid?

質問:

TStringGrid で編集と範囲選択の両方を提供する方法について、記事やコード サンプルを参照できる人はいますか?

はい、これを行うサードパーティのグリッドがあることは知っていますが、組み込みのグリッドにこの基本的な機能がないことに不満を感じています.

バックグラウンド:

グリッド内のセルを編集したり、コピー操作などでセルの範囲を選択したりできることを期待するのは、ごく普通のことです。

出荷時、TStringGrid はそれを行いません。それはどちらか/またはです。実際、ドキュメントには、グリッドのオプションについて、「オプションに goEditing が含まれている場合、goRangeSelect は効果がありません」と記載されています。

ただし、とにかく TStringGrid で編集と範囲選択を行うことができるようです!!! mousedown、mouseup、selectcell、および exit イベントを慎重に使用することで、適切なタイミングで編集要素のオンとオフを切り替えることで、すぐに作業を進めることができます。しかし、私はまだ完璧ではありません.それはマウスの使用のみをカバーし、キーボードの変更はカバーしていません.

0 投票する
1 に答える
8034 参照

delphi - TStringGrid を動的にスクロールするには?

VCL コントロールを使用して、Borland C++Builder IDE で作業しています。別のフォームでのユーザー入力に基づいて、TStringGrid コンポーネントを行までスクロールし、その行を強調表示しようとしています。ハイライト部分は完了しましたが、グリッドを正しい行までスクロールする方法がわかりません。ここ知ってる人いる?

0 投票する
2 に答える
2937 参照

delphi - StringGrid セルの境界線をフォーマットする方法

セルの内容と位置に応じて Delphi TStringgrid をフォーマットしようとしています。

セルの内容に応じてセルの色と形状を変更できますが、セルの境界線にはさらに問題があります。

n列ごとに片側または反対側のセルの境界線を太くしたい

ポインタはありますか?

乾杯

ダン

0 投票する
5 に答える
9906 参照

delphi - Delphi: StringGrid、位置、およびコンテキスト メニュー

TStringGrid とポップアップ メニューの使用に問題があります

ポップアップ メニューからアイテムを選択したときに最後にアクティブだったセルの行/列を知りたいです。ただし、ポップアップ メニューをクリックすると、StringGrid.Row が -1 として返されます。

OnClick の一部として MouseToCell を使用してみましたが、SG.Row を設定した後でも、PopUp メニュー ルーチンで -1 として返されます... 問題は、Grid がフォーカスを失っていることだと思います。

OnClick でグローバル変数を設定する必要のない解決策はありますか?

ツールバーとポップアップ メニューの間でアクションが一貫していることを確認するために、ポップアップ メニューの項目にリンクされたアクション リストを使用しています。

0 投票する
1 に答える
4181 参照

delphi - 文字列グリッドの複数の個別のセルを選択するにはどうすればよいですか?

Ctrlキーを押しながらグリッド上のさまざまなセルをクリックするなど、グリッド内の任意の場所で複数のセルを隣接させずに選択できる文字列グリッドを探しています。または、誰かが標準のDelphiTStringGridでこれを行う方法を知っている場合。

どんなポインタでもありがたいことに受け取られるでしょう。

0 投票する
4 に答える
7099 参照

delphi - Delphi TStringGrid フリッカー

実行時に CSV ファイルから文字列グリッドに複数の行を追加していますが、更新中に StringGrid が頻繁にちらつくように見えます。しかし、私はそれを見つけることができません。グリッド ID が更新されているときにちらつきを止める別の方法はありますか。

コリン