画面・帳票サポートシステム XMAP3 開発ガイド


13.14.2 可変ポップアップメニューダイアログ(GUI画面)

ポップアップで表示するメニューに関して設定します。このほかに,オブジェクトの表示に関する属性は[ポップアップ表示属性]ダイアログで指定します。

ポップアップの配置

「ます」はレイアウト領域でのます目数です。「桁」は表示される有効桁数(半角文字の単位)です。

  • 入力テキスト/選択ラベル

    レイアウト領域上でのオブジェクトの先頭位置,横幅(ます目数),有効桁数が表示されます。

    「メニューデータをファイルで指定する」が「オン」で,「選択ラベルと通知コードを同じ値にする」が「オフ」の場合,レイアウト領域上でのオブジェクトの先頭位置,横幅(ます目数)が表示されます。また,有効桁数を指定します。

  • タイトル,ラベル

    • 「メニューデータをファイルで指定する」が「オフ」の場合

      メニューの先頭位置と,行数(表示するメニューの縦幅)を指定します。また,横幅(ます目数),有効桁数が表示されます。

    • 「メニューデータをファイルで指定する」が「オン」の場合

      ・「メニュー形式」が「標準(メニュー)」の場合

      メニューの先頭位置と,行数(表示するメニューの縦幅),ラベルの有効桁数を指定します。また,横幅(ます目数)が表示されます。

      ・「メニュー形式」が「リスト-ポップアップ型」または「リスト-ダイアログ型」の場合

      メニューの先頭位置と,ます目数(表示するメニューの縦幅),ラベルの有効桁数を指定します。また,横幅(ます目数)が表示されます。メニューの縦幅に指定できるます目数は,6ます以上です。

使用目的

メニューを開くタイミングと入力できる文字の組み合わせで選びます。

・POP・自動/POP・手動
  • POP・自動

    メニュー項目の選択で,データを入力する使い方です。

    ポップアップメニューは,このオブジェクトにフォーカスを位置づけると自動的に表示されます。

  • POP・手動

    メニュー項目の選択とキーボードからの文字入力の2とおりで,データを入力する使い方です。

    ポップアップメニューを表示するには,このオブジェクトにフォーカスやカーソルを位置づけ,プッシュボタンやメニューバーのメニュー項目([選択時の動作]に「ポップアップ表示」を指定したもの)を選びます。

・数字/カナ/英数/日本語
  • 数字

    数字一般(数字コードなど)の半角文字の入力用です。文字種はデータ型に応じて異なります。

    ・PIC Xの場合,入力できる文字は「 0〜9 . , + - * / ( ) < > = ? : ; 」

     APに返す文字は入力できる文字と同じです。

    ・PIC 9の場合,入力できる文字は「 0〜9 , + * \ スペース 」

     APに返す文字は「 0〜9 」,「全桁スペースクリア」

    ・PIC S9の場合,入力できる文字は「 0〜9 , + - * \ スペース 」

     APに返す文字は「 0〜9 符号」,「全桁スペースクリア」

    不正な文字を入力すると入力時にエラーになります。

    PIC S9,PIC 9の場合は,フォーマットチェックが実行されます。

    テキスト・フィールドでの表示上の文字は入力できる文字と同じです。

  • カナ

    半角カナを含む半角文字の入力用です。

    日本語入力システムがカナ入力モードになります。ただし,入力モードを切り替えるとカナ以外の半角文字(スペース,英数,記号)も入力できます。

    全角文字を入力すると,エラー通知文字をAPに返します。

  • 英数

    半角文字だけの入力用です。

    半角文字(スペース,英大文字,英小文字,数字,カナ,記号)を入力できます。全角文字を入力すると入力時にエラーになります。

    APに返す文字は,入力できる文字と同じです。

  • 日本語

    全角文字,全角/半角の混在文字の入力用です。

    日本語入力システムがかな入力モードになります。

    データ型がPIC Nの場合,全角文字だけを入力できます。半角文字(半角スペースを除く)を入力すると,入力時にエラーになります。

    データ型がPIC Xの場合,全角/半角が混在した文字を入力できます。

詳細目的

[使用目的]が日本語の場合に指定できます。

入力を許可する文字の種類を選びます。

「混在(全角・半角)」は,全種類の全角文字・半角文字の混在です。

「漢字」は,全種類の全角文字です。

メニュー形式

「メニューデータをファイルで指定する」が「オン」の場合に,メニューの表示形式を指定します。

  • 標準(メニュー) : 通常のポップアップ表示です。

  • リスト-ポップアップ型 : 絞り込み型メニューをポップアップ表示します。

  • リスト-ダイアログ型 : 絞り込み型メニューをダイアログとして表示します。

アクセスキーを使用する

選択候補(メニューやボタン)を選ぶ手段として,マウスやカーソルキーのほかにアクセスキーを使えるようにします。

アクセスキーに数字(0〜9)を指定しておくと,テンキーで候補選択の操作ができます。

  • 長さ

    アクセスキーの長さを1〜4桁の範囲で指定します。

選択ラベルと通知コードを同じ値にする

[通知コード]の指定と同じ値を[選択ラベル]にも適用します。これはAPに返す通知コードを確定項目として表示することを示します。この場合,[選択ラベル]の指定は不要です。

この指定を「オフ」にする場合は,必ず[選択ラベル]を指定してください。

タイトルを付ける

メニューにタイトルを付けます。

  • タイトル

    メニューに付けるタイトル文字列を指定します。指定できる長さは「メニュー形式」によって異なります。

    「メニュー形式」が「標準(メニュー)」の場合:「ラベル長」の長さ以内

    「メニュー形式」が「リスト-ダイアログ型」の場合:64文字以内

最初にメニューを開く

使用目的が「POP・手動」の場合に,ポップアップにフォーカスが位置づけられたら,メニューを表示するように設定します。

コメントの記述

オブジェクトに付けるコメントを記述します。

APが受け取る項目

APが参照するデータ項目について変更できます。

・データ名

データ項目のデータ名を次の規則に従って指定します。

  • 指定できる文字数は,接頭語(マップ名)を含めて29文字以内です。このため,ドローセットアップの[マップ名の長さ]の設定が「7」の場合は21文字以内,「6」の場合は22文字以内となります。全角文字は2文字分として数えます。ただし,データ名の先頭および末尾の全角文字は,4文字分として数えます。また,全角文字と半角文字が混在する場合,半角文字の直前の全角文字は,4文字分として数えます。

  • 指定できる文字種は,COBOLの場合は「A〜Z」「0〜9」「-(ハイフン)」「大文字の半角カナ」「全角(混在)」です。

    Cの場合は「A〜Z」「a〜z」「0〜9」「_(アンダースコア)」です。

・桁

入力・出力するデータに応じて,データ項目の桁を指定します。

  • [データ長を変更する]ボタンがオフの場合

    指定できる長さは,入出力するデータの最大長以上で,オブジェクトがレイアウト領域に収まる範囲です。ただし,[データ型]が「数字」または「数字編集」のときはピクチャの最大桁を指定します。

  • [データ長を変更する]ボタンがオンの場合

    不活性になり,設定できません。

・データ長

APが受け取る項目のデータ長を指定します。

  • [データ長を変更する]ボタンがオフの場合

    ターゲット,使用目的に応じて,「桁」の値を基に計算した値を表示します。

  • [データ長を変更する]ボタンがオンの場合

    データ長が指定できます。[選択ラベルと通知コードを同じ値にする]ボタンがオンのときの最大値は476,オフのときの最大値は152になります。

    ただし,次の場合エラーになります。

    ・「桁」より小さい値になっている

    ・最大値152,または476を超えている

    ・数値以外が入力された

・データ型

[詳細目的]で「漢字」を指定している場合,「文字(XX)」または「漢字(NN)」を指定できます。

それ以外の場合,固定値(文字(XX))が表示されます。

・桁寄せ

固定値(左)が表示されます。

・埋字

論理マップの項目長よりデータ長が短い場合に残りの領域を埋める文字を指定します。[桁寄せ]に応じて,項目内の右側/左側に埋字が格納されます。

指定できる内容は,オブジェクトの種別や[使用目的]などに応じて異なります。

「スペース」は,半角のスペースで埋字します。

「LOW(X'00')」は,LOW-VALUE((00)16)で埋字します。

「HIGH(X'FF')」は,HIGH-VALUE((FF)16)で埋字します。

「ゼロ」は,0で埋字します。

「埋めない」は,埋字をしません。領域にはAP内の直前のデータ領域の内容がそのまま残るか,初期クリア文字でクリアされます。

「自由な埋字」は,自由な値を埋字にします。この場合,[自由な設定]ボタンから値を指定してください。

データ長を変更する

データ長の自由設定の有無を指定します。

  • オン:データ長を自由設定できます。

  • オフ:データ長を標準設定にします。

ターゲットがWindows,AIX(シフトJIS)の場合は非表示になります。また,他のターゲットの場合でも,使用目的が「POP(XX-日本語)」で詳細目的が「混在(全角・半角)」の場合だけデータ長が指定できます。

動的変更(APから表示属性を変更する)

制御項目を論理マップに展開して,画面表示時または帳票印刷時に表示属性を動的に変更できるようにします。表示属性とは,画面に表示するオブジェクトの文字色や活性/不活性,帳票に印字する文字の書体やけい線の種類などの属性です。

制御項目にAPから修飾名を設定することで,動的に属性を変更できます(ただし,GUI/CUI画面でマッピングオプションが「物理マップ」のときは該当しません)。

修飾名と表示属性との対応は,ドローセットアップで設定します。

APから初期値を変更する

出力論理マップに初期値出力用の領域を展開します。この領域にAPから初期値を設定して,オブジェクトに表示します(対応するメニュー項目が選ばれた状態になります)。

なお,初期値には,該当するメニュー項目に対応する通知コードと同じ値を指定してください。

初期値(通知コード)

入力論理マップの項目にあらかじめ設定しておく初期値を指定します。指定できる内容は,[使用目的]などに応じて異なります。

「指定しない」は,初期値の文字を設定しません。

「LOW(X'00')クリア」は,(00)16で領域をクリアします。

「スペースクリア」は,半角のスペースで領域をクリアします。

「ゼロクリア」は,文字の0で領域をクリアします。

「自由な初期値」は,自由な文字で領域をクリアします。この場合,[自由な設定]ボタンから文字を指定してください。

なお,ポップアップやコンボボックスの初期値には,該当メニュー項目に対応する通知コードを指定してください。

[自由な設定]ボタン

[埋字],[初期値]を任意の値で設定する場合に,値を指定するためのダイアログが表示されます。

APが渡す項目

APからのデータ(各メニュー項目のラベルや対応する通知コードなど)を代入するデータ項目について指定します。

メニューの項目数が多いか,項目を分類したい場合は,ポップアップメニューデータをファイルで指定できます。この場合は,「メニューデータをファイルで指定する」をチェックしてください。また,APが渡す項目については,APが渡す項目(メニューデータをファイルで指定する場合)を参照してください。

メニューの項目数

メニューの項目数を指定します。なお,項目数がメニューの行数を超える場合,画面表示時にはスクロールバーが付加されます。

ラベルのデータ長を変更する

ラベル系項目のデータ長の自由設定の有無を指定します。

  • オン:ラベル系のデータ長を自由設定できます。

  • オフ:ラベル系のデータ長を標準設定にします。

ターゲットがWindows,AIX(シフトJIS)の場合は非表示になります。また,他のターゲットの場合,データ長が指定できます。

ラベル

APがメニュー項目のラベルとして設定する文字列を代入するデータ項目について変更できます。

・データ名

データ項目のデータ名を次の規則に従って指定します。

  • 指定できる文字数は,接頭語(マップ名)を含めて29文字以内です。このため,ドローセットアップの[マップ名の長さ]の設定が「7」の場合は21文字以内,「6」の場合は22文字以内となります。全角文字は2文字分として数えます。ただし,データ名の先頭および末尾の全角文字は,4文字分として数えます。また,全角文字と半角文字が混在する場合,半角文字の直前の全角文字は,4文字分として数えます。

  • 指定できる文字種は,COBOLの場合は「A〜Z」「0〜9」「-(ハイフン)」「大文字の半角カナ」「全角(混在)」です。

    Cの場合は「A〜Z」「a〜z」「0〜9」「_(アンダースコア)」です。

・桁

APが渡す項目ラベルの桁を指定します。

  • [ラベルのデータ長を変更する]ボタンがオフの場合,またはデータ型が「文字(XX)」の場合

    指定できる長さは,入出力するデータの最大長以上で,オブジェクトがレイアウト領域に収まる範囲です。ただし,[データ型]が「数字」または「数字編集」のときはピクチャの最大桁を指定します。

  • [ラベルのデータ長を変更する]ボタンがオンでデータ型が「文字(XX)」の場合

    不活性になり,設定できません。

・データ長

APが渡す項目ラベルのデータ長を指定します。

  • [ラベルのデータ長を変更する]ボタンがオフの場合

    ターゲット,データ型に応じて,「桁」の値を基に計算した値を表示します。

  • [ラベルのデータ長を変更する]ボタンがオンの場合

    「桁」より小さい値になっているとエラーになります。

    また,次の場合エラーになります。

    ・最大値152を超えている

    ・数値以外が入力された

・データ型

使用言語がCOBOLの場合に,ピクチャ句で指定するデータ型を選びます。選べるデータ型は,オブジェクトの種類や他の項目の指定に応じて異なります。なお,Cの場合は文字(char)型で固定です。

  • 文字用の「文字(XX)」,「漢字(NN)」,「漢字(XX)」

  • 数字用の「99999」

  • 数字編集用の数字編集文字列

    Z 9 \ などを組み合わせた各種。自由な値を定義する場合は,「その他のピクチャ」を選び,[自由な設定]ボタンからピクチャ文字を指定します。

・桁寄せ

データ長が論理マップ上の項目の長さより短い場合に,データを左右のどちらに寄せるかを指定します。使用言語がCOBOLで,次のどちらかの場合に指定できます。その他の場合はオブジェクトの種別やデータ型などに応じた固定値となります。

  • [使用目的]が「数字」で[データ型]が「文字(XX)」

  • [使用目的]が「英数」または「カナ」

・埋字

論理マップの項目長よりデータ長が短い場合に残りの領域を埋める文字を指定します。[桁寄せ]に応じて,項目内の右側/左側に埋字が格納されます。

指定できる内容は,オブジェクトの種別や[使用目的]などに応じて異なります。

「スペース」は,半角のスペースで埋字します。

「LOW(X'00')」は,LOW-VALUE((00)16)で埋字します。

「HIGH(X'FF')」は,HIGH-VALUE((FF)16)で埋字します。

「ゼロ」は,0で埋字します。

「埋めない」は,埋字をしません。領域にはAP内の直前のデータ領域の内容がそのまま残るか,初期クリア文字でクリアされます。

「自由な埋字」は,自由な値を埋字にします。この場合,[自由な設定]ボタンから値を指定してください。

通知コード

各メニュー項目に対応する通知コードをAPが渡すためのデータ項目について指定します。

・データ名

データ項目のデータ名を次の規則に従って指定します。

  • 指定できる文字数は,接頭語(マップ名)を含めて29文字以内です。このため,ドローセットアップの[マップ名の長さ]の設定が「7」の場合は21文字以内,「6」の場合は22文字以内となります。全角文字は2文字分として数えます。ただし,データ名の先頭および末尾の全角文字は,4文字分として数えます。また,全角文字と半角文字が混在する場合,半角文字の直前の全角文字は,4文字分として数えます。

  • 指定できる文字種は,COBOLの場合は「A〜Z」「0〜9」「-(ハイフン)」「大文字の半角カナ」「全角(混在)」です。

    Cの場合は「A〜Z」「a〜z」「0〜9」「_(アンダースコア)」です。

・桁,データ長,データ型

[APが受け取る項目]と同じ値が表示されます。

選択ラベル

メニュー項目の選択時に,メニュー項目に対応してボックス内に表示されるラベルについて指定します。

・データ名

データ項目のデータ名を次の規則に従って指定します。

  • 指定できる文字数は,接頭語(マップ名)を含めて29文字以内です。このため,ドローセットアップの[マップ名の長さ]の設定が「7」の場合は21文字以内,「6」の場合は22文字以内となります。全角文字は2文字分として数えます。ただし,データ名の先頭および末尾の全角文字は,4文字分として数えます。また,全角文字と半角文字が混在する場合,半角文字の直前の全角文字は,4文字分として数えます。

  • 指定できる文字種は,COBOLの場合は「A〜Z」「0〜9」「-(ハイフン)」「大文字の半角カナ」「全角(混在)」です。

    Cの場合は「A〜Z」「a〜z」「0〜9」「_(アンダースコア)」です。

・桁

APが渡す項目選択ラベルの桁を指定します。

  • [ラベルのデータ長を変更する]ボタンがオフの場合,またはデータ型が「文字(XX)」の場合

    指定できる長さは,入出力するデータの最大長以上で,オブジェクトがレイアウト領域に収まる範囲です。ただし,[データ型]が「数字」または「数字編集」のときはピクチャの最大桁を指定します。

  • [ラベルのデータ長を変更する]ボタンがオンでデータ型が「文字(XX)」の場合

    不活性になり,設定できません。

・データ長

APが渡す項目選択ラベルのデータ長を指定します。

  • [ラベルのデータ長を変更する]ボタンがオフの場合

    ターゲット,データ型に応じて,「桁」の値を基に計算した値を表示します。

  • [ラベルのデータ長を変更する]ボタンがオンの場合

    「桁」より小さい値になっているとエラーになります。

    また,次の場合エラーになります。

    ・最大値152を超えている

    ・数値以外が入力された

・データ型

使用言語がCOBOLの場合に,ピクチャ句で指定するデータ型を選びます。選べるデータ型は,オブジェクトの種類や他の項目の指定に応じて異なります。なお,Cの場合は文字(char)型で固定です。

  • 文字用の「文字(XX)」,「漢字(NN)」,「漢字(XX)」

  • 数字用の「99999」

  • 数字編集用の数字編集文字列

    Z 9 \ などを組み合わせた各種。自由な値を定義する場合は,「その他のピクチャ」を選び,[自由な設定]ボタンからピクチャ文字を指定します。

・桁寄せ

データ長が論理マップ上の項目の長さより短い場合に,データを左右のどちらに寄せるかを指定します。使用言語がCOBOLで,次のどちらかの場合に指定できます。その他の場合はオブジェクトの種別やデータ型などに応じた固定値となります。

  • [使用目的]が「数字」で[データ型]が「文字(XX)」

  • [使用目的]が「英数」または「カナ」

・埋字

論理マップの項目長よりデータ長が短い場合に残りの領域を埋める文字を指定します。[桁寄せ]に応じて,項目内の右側/左側に埋字が格納されます。

指定できる内容は,オブジェクトの種別や[使用目的]などに応じて異なります。

「スペース」は,半角のスペースで埋字します。

「LOW(X'00')」は,LOW-VALUE((00)16)で埋字します。

「HIGH(X'FF')」は,HIGH-VALUE((FF)16)で埋字します。

「ゼロ」は,0で埋字します。

「埋めない」は,埋字をしません。領域にはAP内の直前のデータ領域の内容がそのまま残るか,初期クリア文字でクリアされます。

「自由な埋字」は,自由な値を埋字にします。この場合,[自由な設定]ボタンから値を指定してください。

アクセスキー

メニュー項目に対するアクセスキーをAPから設定するときのデータ項目について指定します。[アクセスキーを使用する]が「オン」の場合に指定できます。

・データ名

データ項目のデータ名を次の規則に従って指定します。

  • 指定できる文字数は,接頭語(マップ名)を含めて29文字以内です。このため,ドローセットアップの[マップ名の長さ]の設定が「7」の場合は21文字以内,「6」の場合は22文字以内となります。全角文字は2文字分として数えます。ただし,データ名の先頭および末尾の全角文字は,4文字分として数えます。また,全角文字と半角文字が混在する場合,半角文字の直前の全角文字は,4文字分として数えます。

  • 指定できる文字種は,COBOLの場合は「A〜Z」「0〜9」「-(ハイフン)」「大文字の半角カナ」「全角(混在)」です。

    Cの場合は「A〜Z」「a〜z」「0〜9」「_(アンダースコア)」です。

・長さ,データ型

それぞれ固定値(アクセスキーの[長さ]に指定した値,文字(XX))が表示されます。

[自由な設定]ボタン

[データ型],[埋字]を任意の値で設定する場合に,値を指定するためのダイアログが表示されます。

APが渡す項目(メニューデータをファイルで指定する場合)

メニューデータをファイルで指定する場合のAPが渡す項目を示します。

ファイル名

APがポップアップメニューファイルの名称を指定するためのデータ項目について指定します。

・データ名

ポップアップメニューファイルの名称を格納するデータ項目のデータ名を指定します。

データ項目のデータ名を次の規則に従って指定します。

  • 指定できる文字数は,接頭語(マップ名)を含めて29文字以内です。このため,ドローセットアップの[マップ名の長さ]の設定が「7」の場合は21文字以内,「6」の場合は22文字以内となります。全角文字は2文字分として数えます。ただし,データ名の先頭および末尾の全角文字は,4文字分として数えます。また,全角文字と半角文字が混在する場合,半角文字の直前の全角文字は,4文字分として数えます。

  • 指定できる文字種は,COBOLの場合は「A〜Z」「0〜9」「-(ハイフン)」「大文字の半角カナ」「全角(混在)」です。

    Cの場合は「A〜Z」「a〜z」「0〜9」「_(アンダースコア)」です。

・桁

ポップアップメニューファイルの名称を格納するデータ項目の桁が表示されます。

指定できる値は[データの渡し方]に応じて異なります。

・データ長

APが渡す項目ファイル名のデータ長を指定します。

  • [ラベルデータ長を変更する]ボタンがオフの場合

    ターゲット,データ型に応じて,「桁」の値を基に計算した値を表示します。

  • [ラベルデータ長を変更する]ボタンがオンの場合

    「桁」より小さい値になっているとエラーになります。

    また,次の場合エラーになります。

    ・最大値607を超えている

    ・数値以外が入力された

・データの渡し方

APが渡す項目ファイル名のデータの渡し方を指定します。

  • [ラベルのデータ長を変更する]ボタンがオフの場合

    ファイル名指定:データ長12桁

    フルパス64:データ長64桁

    フルパス128:データ長128桁

    フルパス259:データ長259桁

  • [データ長を変更する]ボタンがオンの場合,指定できません。

・初期値

ポップアップメニューファイルの名称を,初期値として指定します。

なお,指定したファイルを作成しておくと,ドローのテスト表示で確認できます。

[参照]ボタン

ポップアップメニューファイルの名称を選択するためのダイアログが表示されます。