編集フィールド - KeyPress イベント

キーボードのキーが押されると起動します

編集フィールド (PRIM_MD.Edit) のメンバ

パラメーター

名前タイプデータ タイプ記述
KeyCode*Input列挙押下されたキー
Char*BothUnicode 文字列押下された文字
IsAltDown*Inputブール値Alt キーが押されたかどうか
IsControlDown*Inputブール値Ctrl キーが押されたかどうか
IsShiftDown*Inputブール値Shift キーが押されたかどうか
Handled*Bothブール値TRUE に設定して、キーが自動的に処理されないようにします。

詳細

KeyPress イベントは、キーが押されると起動します。
 
押されたキーが文字の場合、Char パラメータにはその文字が、KeyCode パラメータには "IsChar" という値が含まれます。
 
押されたキーが、矢印、機能キー、Home や End キーなど数多くあるコントロール キーの 1 つの場合、KeyCode にはそのキーの名前が含まれ、Char は空になります。オートコンプリートまたは F2 によって使用可能な値の全リストが提供されます。
 
キー処理が必要なメインストリームのアクションは LANSA により自動的に処理されます。
 
Enter キーの処理には、Enter イベントもしくは ButtonDefault プロパティに TRUE が設定されているボタンを使用します。
 
パスワードの入力を非表示にするには、PasswordChar を指定した編集コントロールを使用する、もしくは入力属性が ND のフィールドを使用できます。
 
値を完成するために入力途中で割り込むには、フィールドで AutoCompleting イベントを使用します。
 
KeyPress は完成度を高めるために提供されており、多くの開発では必要となりません。

次の例は、KeyPress イベントによる出力された値を表示します。
Function Options(*DIRECT)
Begin_Com Role(*EXTENDS #PRIM_FORM) Height(469) Left(190) Top(223) Width(686) Clientwidth(670) Clientheight(430) Layoutmanager(#TableLayout1)
 
   Define_Com Class(#PRIM_TBLO) Name(#TableLayout1)
   Define_Com Class(#PRIM_TBLO.Column) Name(#Column1) Displayposition(1) Parent(#TableLayout1)
   Define_Com Class(#PRIM_TBLO.Row) Name(#Row1) Displayposition(1) Parent(#TableLayout1)
   Define_Com Class(#PRIM_TBLO.Item) Name(#ListViewItem1) Column(#Column1) Manage(#ListView) Parent(#TableLayout1) Row(#Row1)
 
   Define_Com Class(#PRIM_LTVW) Name(#ListView) Columnbuttonheight(19) Componentversion(2) Displayposition(1) Fullrowselect(True) Keyboardpositioning(SortColumn) Left(0) Parent(#COM_OWNER) Showsortarrow(True) Tabposition(1) Top(0) Height(430) Width(670)
   Define_Com Class(#PRIM_LVCL) Name(#LVCL1) Displayposition(1) Parent(#ListView) Source(#xDemoAlpha128) Width(33) Captiontype(Caption) Caption('KeyCode')
   Define_Com Class(#PRIM_LVCL) Name(#LVCL2) Displayposition(2) Parent(#ListView) Source(#xDemoCaption) Captiontype(Caption) Caption('Character') Width(26)
 
   Evtroutine Handling(#ListView.KeyPress) Keycode(#KeyCode) Char(#Char)
 
      #xDemoAlpha128 := #KeyCode
      #xDemoCaption := #Char
 
      Add_Entry To_List(#ListView)
 
   Endroutine
 
End_Com

参照

すべてのコンポーネント クラス

テクニカルリファレンス

EPC142030 February 2019