2016-06-12 6 views
2

にtStringGridでOnSelectCellイベントのキャンバス画素位置に座標実際のピクセル座標がどこにあるか私が知っているように、OnDrawCellイベントは私に「のRect」のレコードを与えますOnSelectCellは、私に行/列座標のみを与えます。は、Delphi

どのように行/列をピクセル座標に変換しますか?

実行時に、選択したセル全体をカバーするためにコンボボックスを作成する必要があるため、セルが選択されている場合のみコンボボックスが必要です。私はすべてを行う方法を知っていますが、座標を取得する方法はわかりません(今、私は親のtStringGridの0,0にコンボを作成しています)。

私はDelphi7を使用していますが、一般的な質問であり、Delphiのバージョンには関係しません。

PS:セル内にコンボボックスを実装する商用およびフリーウェアのコンポーネントがたくさんあることを知っていますが、使用できない、または使用したくないということを認識しています。

あなたは細胞画面を決定することができ

答えて

4

CellRect method

P.S.を使用して座標ありがとうStringGridにコントロールを統合しようとしたことがありますか?
コントロール(グリッドを親とする)で問題が発生した場合は、this topic

+0

を探してください。将来の参照用: myRect:=(送信者はTStringGrid).cellRect(aCol、aRow); – ZioBit

+0

統合について...そうではありません。私は、例えば、カスタムonDrawCellを書いている頃です。 – ZioBit

+1

これからの問題についてのリンクを追加しました。 – MBo