Enter キーによる Tab 移動を実装したデータウィンドウでカラムに改行を入力する

PowerBuilder Tips

方法

データウィンドウで Enter キーによるタブ移動は [pbm_dwnprocessenter] をイベント ID にもつユーザーイベントを定義して実装することができます。

データウィンドウ内のカラムのフォーカス移動を Enter キーで行う

しかし、この方法では複数行が入力可能なエディット様式のカラムに対して改行を入力することができません。

このような場合はユーザーイベントのイベント ID を [pbm_dwnprocessenter] ではなく [pbm_dwnkey] で作成し、入力されたキーによって Tab 移動と改行の入力を判定します。

【例】

[データウィンドウコントロールに作成した イベントID [pbm_dwnkey] のユーザーイベント]

IF key = KeyEnter! THEN // [Enter] 押下時
    IF keyflags = 2 THEN
        // [Ctrl + Enter] の場合は何もしない (Enterの入力を有効にする)
        RETURN 1
    ELSE
        // [Ctrl] が押されていない場合は Tab 移動する
        Send(Handle(this), 256, 9, Long(0,0))
        RETURN 1
    END IF
END IF

 

Tips情報

プロダクト :PowerBuilder

バージョン :2019R3

Tips 一覧を見る
PowerBuilder マイグレーション
PowerBuilderとは? ~デキる大人へ変身できる?ローコード開発ツール~