ドゥアイネットのプログラマー、湯川が開発日記を綴ります。

CALENDAR
S M T W T F S
1234567
891011121314
15161718192021
22232425262728
293031    
<< December 2019 >>
ARCHIVES
CATEGORIES
<< show create table文 | main | Mash up Award 3rd-その2 >>
recordgridでクリックされた場所
curlのrecordgridでクリックされた場所のインデックスとデータを取りたいと思いちょっと調べました。

メンテツールを作り始めのころcurlユーザーズグループのBBS(昔のほう)でみたような気がしたので検索してみました。
記憶どおりありました。ダブルクリックされたセルのrowとcolのインデックスの取り方が投稿されていました。

あとはちょっと変えて、データを取れるようにするだけです。
こんな感じでできました。

{on e:PointerEnvelopeEvent at rg:RecordGrid do
 {type-switch e.contents
  case pp:PointerPress do
  ||クリックしたレコードグリッド情報を取得する
  let (cell:#RecordGridCell, row-index:int, col-index:int) ={rg.grid-objects-at e.x, e.y}
  {if pp.button == left-button then
   {if-non-null cell then
    {popup-message
    {{rg.records.select}[row-index].get
     col-indexに対応した列名
    }
    }
    {e.consume}
   }
  }
 }
}

「col-indexに対応した列名」にはrecordgrid内の列名が必要です。
内容全てを覚えておく必要はないですけど、
「あそこにあったな」ぐらいの記憶は必要だなと思いました。
| マスターメンテナンス | 15:01 | comments(0) | - |
コメント
コメントする