03-06-2012, 11:41 AM,
|
|||||
|
|||||
RE: RecordGridの右クリックメニューについて
ご回答ありがとうございます。
プロジェクトの規約のため、 Curl標準のRecordGridを継承したクラスを使用しています。 私の方でも、該当の右クリックメニュー表示が遅いグリッドを Curl標準のRecordGridに変えてみたところ、 列数を減らした時よりも早く、右クリックメニューが表示されました。 hokadaさんのソースと同じような実装になっています。 列数だけの問題かと思っていましたが、 継承したグリッドのソースコードを見直しをしています。 試しに、プロファイリングをしてみたところ、 標準のRecordGridUIを継承したUIクラスの note-columns-collection-changedメソッドで 時間がかかっているようです。 継承したUIクラスに下記メソッドが存在し、 {method public {context-menu-at xistance, yistance}:#MenuPane let menu-pane:#MenuPane {with self.grid.editable? = false do set menu-pane = {super.context-menu-at x, y} } {return menu-pane} } {with self.grid.editable? = false do のeditableでRecordGridColumnを継承したクラスの ローカルオプションを参照し、その処理内で UIクラスのnote-columns-collection-changedメソッドを呼んでいるようです。 {define-class public ExBaseRecordGridColumn {inherits RecordGridColumn} ・・・コード略・・・ {local-option public editable?:bool {self.note-columns-collection-changed} } ・・・コード略・・・ {method protected {note-columns-collection-changed}:void {if-non-null rg = self.grid then {(rg.ui asa RecordGridUI).note-columns-collection-changed} } } } 試しに、note-columns-collection-changedの 処理内容をコメントアウトしてみたところ、 右クリックメニューの表示が早くなりました。 今回のプロジェクトでどのような仕様でRecordGridを実装すべきか 一旦、フレームワーク作成者と相談してみます。 |
|||||
« Next Oldest | Next Newest »
|
Messages In This Thread |
RecordGridの右クリックメニューについて - by nishiguchi - 03-05-2012, 04:37 PM
RE: RecordGridの右クリックメニューについて - by c-s - 03-06-2012, 09:33 AM
RE: RecordGridの右クリックメニューについて - by hokada - 03-06-2012, 10:06 AM
RE: RecordGridの右クリックメニューについて - by nishiguchi - 03-06-2012, 11:41 AM
RE: RecordGridの右クリックメニューについて - by c-s - 03-06-2012, 03:16 PM
|
Users browsing this thread:
1 Guest(s)
1 Guest(s)