標準アクションの代わりにコマンドを使用する場合
日付 | 2011/08/10 |
---|---|
ID | 76367 (英語原文参照) |
バージョン | v12 |
プラットフォーム | Mac/Win |
次レコード, 前レコードなどの標準アクションが設定されたボタンは, ステータスが自動的に変化するので便利です。しかし, ナビゲーションの標準アクションは, そのテーブルのフォームでしか効力がありません。
PREVIOUS RECORDやNEXT RECORDなどのコマンドを標準アクションの代わりに使用する場合, ボタンのステータスは自分で管理しなければなりません。下記はそのようなメソッドの例です。
// Method: NavButtonControl // Parameters // $1 - Pointer to table // $2 - Pointer to the Variable of a Previous Record Button // $3 - Pointer to the Variable of a Next Record Button // ---------------------------------------------------- C_POINTER($1;$table_p) C_POINTER($2;$prevButton_p) C_POINTER($3;$nextButton_p) If (Count parameters>=3) $table_p:=$1 $prevButton_p:=$2 $nextButton_p:=$3 If (Selected record number($table_p->)<=1) | (Is new record($table_p->)) DISABLE BUTTON($prevButton_p->) Else ENABLE BUTTON($prevButton_p->) End if If (Selected record number($table_p->)=Records in selection($table_p->))\ | (Is new record($table_p->)) DISABLE BUTTON($nextButton_p->) Else ENABLE BUTTON($nextButton_p->) End if End if NEXT RECORD([Table_1]) NavButtonControl(->[Table_1];->PrevButton;->NextButton) PREVIOUS RECORD([Table_1]) NavButtonControl(->[Table_1];->PrevButton;->NextButton)