2017-04-06 19 views
0

私はデータウィンドウを持っています。そしてそこに私はエントリーを持っています。私はrbuttondownを使って新しいエントリを追加したいが、うまくいきません。どうやってやるの?私はこれを書いたが、間違っている...新しい行を挿入する際の問題powerbuider

IF row > 0 THEN 
    //This.SetRow(row) 
    This.SelectRow(0, FALSE) 
    This.SelectRow(row, TRUE) 
    //this.ScrollToRow(row) 
    parent.TriggerEvent("ue_agregar") 
END IF 

ありがとう!あなたは次の関数を使用する必要が新しい行を挿入するには

答えて

1

「新規」オプションを使用してメニューを定義する必要があります。このオプションは、insertrowメソッドおよび実行する他のコードをトリガーする必要があります。

あなたがこの(PowerBuilderのヘルプから)のようなPopMenuメソッドを経由してメニューを表示:メニューはウィンドウ に関連付けられている場合、メニューが現在のウィンドウに関連付けられている場合、あなたは、単に呼び出すことができます

PopMenu関数

コマンドボタンのスクリプトに次のステートメントは、メニューm_helpがすでにウィンドウに関連付けられていると仮定すると、現在のポインタの位置にポップアップメニューとしてm_helpが表示されます。メニューは関連付けられていない場合

m_help.PopMenu(PointerX(), PointerY()) 

メニューがまだウィンドウに関連付けられていない場合は、メニューのインスタンスを作成してからポップアップメニューとして表示する必要があります。

次の文はm_newがスクリプトを含むウィンドウに関連付けられていないと仮定すると、ポインタの位置にメニューm_newをポップアップ次に、メニューm_newのインスタンスを作成する:はい

m_new mymenu 
mymenu = create m_new 
mymenu.PopMenu(PointerX(), PointerY()) 
1

...

ll_row = This.InsertRow(0)

機能は、それが挿入された行を返します。これを使用して、新しい行をスクロールまたは選択することができます。

+0

、私はrbuttondownを使用イベント。私は右クリックしてから、 "New"を押してから、新しいエントリを挿入したいと思う。私は前のエントリも見たいと思う。 –

+0

私の問題は、私が右クリックを押すと、 "コピー"、 "ペースト"、 "カット"オプションを含むメニューが表示され、その後、左クリックすると "新規"と表示されます。それは奇妙な振る舞いで、私は理由を知らない。私はちょうど右クリックし、次に "New"を押したいと思う。 –

関連する問題