Thread Rating:
  • 320 Vote(s) - 2.71 Average
  • 1
  • 2
  • 3
  • 4
  • 5
グリッドでもESCキーのイベントを透過させたい
08-27-2014, 04:40 PM, (This post was last modified: 08-27-2014, 04:41 PM by umemura.)
#4
RE: グリッドでもESCキーのイベントを透過させたい
やっぱり、consume されないようにすれば、View を閉じれました。
イベントの中を正しく追えていなかった(super.on-key-press を見落としていた)です。失礼。

こんなことをしていいのかどうか、という問題はありますが・・・。

Code:
{define-class public open CustomSkinnedSRGTextFieldFeel
  {inherits SkinnedSRGTextFieldFeel}

  {method public open {on-key-press ev:KeyPress}:void
{super.on-key-press ev}
    {if-non-null ui = self.ui-object asa #SkinnableTextFieldUI then
        {switch ev.value
         case KeyPressValue.esc do
            set ev.consumed? = false
        }
    }
  }
}

あと、セルの振る舞い(キープレス)を変えるのは、このControlFeel を使うのが正しいのでしょうかね?
ルックアンドフィール(LookAndFeel)を取得して、レジストして・・・というのは、
アスペクト志向のようで、便利ではあるのですが、あとからコードを探しにくいという欠点もあるので、
クラスの継承のみで完結させたい気もあります。
このあたり詳しい人いたらコメント下さい。




Messages In This Thread
RE: グリッドでもESCキーのイベントを透過させたい - by umemura - 08-27-2014, 04:40 PM
Forum Jump:


Users browsing this thread:
1 Guest(s)

MyBB SQL Error

MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1017 - Can't find file: 'mybb_threadviews' (errno: 2)
Query:
INSERT INTO mybb_threadviews (tid) VALUES('1102')