Page History
...
ポップアップ・メニューを作成するには、リポジトリタブのグループのメニューを開きます。ポップアップ・メニューを関連付けるコンポーネントにドラッグします。これ以外の方法では、コンポーネントを右クリックし、ポップアップ・メニューを起動し、Pop-up Menuオプションを選択します。メニュー・アイテムのキャプションを入力できる編集ボックスがデザインビューの上部に表示されます。
編集ボックスにメニュー・アイテムのキャプションを入力します。アイテムを追加するには、Enterキーを押します。
実行時にユーザーがフィールドを右クリックすると、ポップアップ・メニューが表示されます。
作成後にポップアップ・メニューを編集するには、関連付けるコンポーネントを右クリックし、ポップアップメニューの編集オプションを選択します。これ以外の方法では、[アウトライン] タブのポップアップ・メニューを選択します。
フィールドのポップアップ・メニューの作成中に、自動的に切り取り、コピー、貼り付けに有効なオプションを追加できます。これらのオプションで、ユーザーはフィールドの値を切り取り、コピー、および貼り付けできます。
これらの自動のオプションのいずれかを使用する場合は、ポップアップ・メニューの AutoActions プロパティを使用します(現在のバージョンではこの3つのautoactionsだけが実装でき、フィールドにのみ適用されます)。
ポップアップ・メニューとコンポーネントは、コンポーネントの PopupMenu プロパティを使用して関連付けられます。このプロパティを使用し、ポップアップ・メニューを他のコンポーネントに割り当てることができます。
同じポップアップ・メニューを複数のコンポーネントで使用することができます。例えば、エクスプローラ・タイプのインターフェース (左にツリー・ビュー、右にリスト・ビュー) では、通常は1つのポップアップ・メニューだけを使用します。
DEFINE_
...
COM CLASS(#PRIM_TRVW)
...
NAME(#TREEVIEW)
...
POPUPMENU(#PMNU_1)
DEFINE_
...
COM CLASS(#PRIM_LTVW)
...
NAME(#LISTVIEW)
...
POPUPMENU(#PMNU_1)
...
その後、ポップアップ・メニューの1つのメニュー・アイテムごとに、選択されたアイテムのタイプによりアクションを実行するコードを記述します。この例では、ツリー・ビューのキー列は #DEPTMENT フィールドと #SECTION フィールドをソースにし、リスト・ビューのキー列は #EMPNO フィールドをソースにします。
...
EVTROUTINE HANDLING(#MiDetail.click)
...
if '#empno *ne *blanks'
...
invoke #EmpForm.activateForm
...
set #EmpForm emp_value(#empno)
...
emp_dept(#deptment)
...
emp_sect(#section)
...
else
if '#section *ne *blanks'
...
invoke #SecForm.activateform
...
set #SecForm dept_value(#deptment)
...
sect_value(#section)
...
top(#std_num)
...
else
if '#deptment *ne *blanks'
...
invoke #DeptForm.activateform
...
set #DeptForm dept_value(#deptment)
...
endif
endif
endif
ENDROUTINE







