掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
StringGrid上で違う行に連続でポップアップの表示をするには? (ID:32488)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
var cp,sp :TPoint; bRect :TRect; begin //スクリーンのカーソル座標を取得 GetCursorPos(cp); //スクリーンの座標からクライアントの座標へ sp := StringGrid1.ScreenToClient(cp); //ColとRowを取得 StringGrid1.MouseToCell(sp.X,sp.Y,intCol,intRow); if (intCol >= 0) and (intRow >= 0) and (Bottun = mbRigth) then begin if ・・・ tnen //ポップアップを表示するか否か判定 begin //ポップアップ位置を指定のCellを基準に bRect := StringGrid1.CellRect(intCol,intRow); cp := StringGrid1.ClientToScreen(sp); PopMenu.PopUp(cp.X+10,cp.Y+10); //ちょとずらして表示 外れてるかもしれませんが、如何でしょうか? X,Y値ではなくカーソルの位置を取得し、それをGridの座標に変換 そして、ColとRow値を取得する。 これで上手くいった気がしましたが・・・ ちなみにコピペでないので綴りが違うかも
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.