Chapter 9:ライブラリ、住所録への適用
"住所録"フォームを定義画面で開いて次のようにトグルボタン(とラベル)の属性をセットしてください。
"chkフッタ表示"の属性は "ボタンの種類:チェックボックス" 、" オンの値:1 " 、"オフの値:設定する、0 " です。見たままですね。
"住所録"イベントにはまず次の行を追加してください。
11 | 変数宣言 局所,整数 { &mフッタ表示 }= 1 /* 初期値を設定しています */ |
12 | |
13 | ライブラリ #一括パス名 + "Yubinjyusho.cmx" |
14 | * |
15 | |
46 | 手続き定義開始 chkフッタ表示::ソース値更新() |
47 | 手続き実行 フッタ部を表示( ) |
48 | |
49 | 変数宣言 自動,文字列 { &ファイル名 = #ファイル名( &m編集対象表 , 2 ) } /* 2:ファイル名 */ |
50 | 変数宣言 自動,文字列 { &STRbak , &変数値 } |
51 | &STRbak = &STR /* &STR の値を 自動変数 &STRbak に退避 */ |
52 | |
53 | &STR = &ファイル名 + "," + "mフッタ表示" /* 保存変数名称:局所変数は使用するフォーム専用なので編集対象表名を付加。*/ |
54 | 手続き実行 変数書出( &STR , #文字列 ( &mフッタ表示 ) , &m変数保存表 ) |
55 | |
56 | &STR = &STRbak /* &STRbakの値を 組み込み変数 &STR に戻す */ |
57 | 手続き定義終了 |
ここまで出来たら、"住所録"フォームを開いてみてください。
とりあえず "フッタ表示" のチェックを ON・OFF すると、フッタ部分が表示・非表示されますか。
----------
次にフォームを閉じたときのフッタ表示の状態を保存して、フォームを開くときに復元するようにします。
"住所録"フォームを定義画面で開きます。
ワークスペースにコマンドボタン "Startup" を追加します。
フォームの属性 → オプション → 実行コマンドの開始時に "cmdStartup " ボタンを登録します。
"住所録"イベントには次の行を追加してください。
"郵便番号簿"イベントからうまくコピペして流用してください。
いかがですか。
フォームを閉じた際のフッタ状態がフォームを開いたときに反映されているのを確かめてください。
参考
1 | 名札 メイン |
2 | |
3 | 変数宣言 局所,文字列 { &m編集対象表 = #一括パス名 + "住所録.tbx" } |
4 | オブジェクト操作 @フォーム.編集対象表 = &m編集対象表 /* 編集対象表は、メイン処理でのみ変更できます */ |
5 | |
6 | 変数宣言 局所,文字列 { &m変数保存表 = #一括パス名 + "変数保存表.tbx" } |
7 | |
8 | 変数宣言 局所,文字列 { &m入力前値 , &m入力後値 } |
9 | 変数宣言 局所,文字列 { &m郵便番号 } |
10 | |
11 | 変数宣言 局所,整数 { &mフッタ表示 = 1 } |
12 | |
13 | ライブラリ #一括パス名 + "Yubinjyusho.cmx" |
14 | * |
15 | |
16 | 手続き定義開始 cmdStartupClick( ) |
17 | 手続き実行 prc変数読込( &m変数保存表 ) |
18 | 手続き実行 prc起動時フッタ表示( ) |
19 | 手続き定義終了 |
20 | |
21 | 手続き定義開始 prc変数読込( 文字列 &変数保存表 ) |
22 | 変数宣言 自動,文字列 { &ファイル名 = #ファイル名( &m編集対象表 , 2 ) } /* 2:ファイル名 */ |
23 | 変数宣言 自動,文字列 { &STRbak , &変数値 } |
24 | 変数宣言 自動,整数 { &importTblNum } |
25 | &STRbak = &STR /* &STR の値を 自動変数 &STRbak に退避 */ |
26 | |
27 | 表 &変数保存表 /* 変数保存表.tbx を開く */ |
28 | &importTblNum = #IS表 |
29 | |
30 | &STR = &ファイル名 + "," + "mフッタ表示" /* 局所変数は使用するフォーム専用となるので編集対象表名も検索値の一部です。*/ |
31 | 手続き実行 変数値代入整数( &STR , &mフッタ表示 ) |
32 | |
33 | 終了 表 &importTblNum /* 変数保存表.tbx を閉じる */ |
34 | &STR = &STRbak /* &STRbakの値を 組み込み変数 &STR に戻す */ |
35 | メソッド呼び出し @フォーム.変数変更() |
36 | 手続き定義終了 |
37 | |
38 | 手続き定義開始 prc起動時フッタ表示( ) |
39 | if ( &mフッタ表示 = 1 ) |
40 | * フォームを開いて変数を読み込んだ値が "1" の時は何もしません(フォーム起動時のデフォルトがフッタ表示状態です)。 |
41 | else |
42 | 手続き実行 フッタ部を表示( ) |
43 | end |
44 | 手続き定義終了 |
45 | |
46 | 手続き定義開始 chkフッタ表示::ソース値更新() |
47 | 手続き実行 フッタ部を表示( ) |
48 | |
49 | 変数宣言 自動,文字列 { &ファイル名 = #ファイル名( &m編集対象表 , 2 ) } /* 2:ファイル名 */ |
50 | 変数宣言 自動,文字列 { &STRbak , &変数値 } |
51 | &STRbak = &STR /* &STR の値を 自動変数 &STRbak に退避 */ |
52 | |
53 | &STR = &ファイル名 + "," + "mフッタ表示" /* 保存変数名称:局所変数は使用するフォーム専用なので編集対象表名を付加。*/ |
54 | 手続き実行 変数書出( &STR , #文字列 ( &mフッタ表示 ) , &m変数保存表 ) |
55 | |
56 | &STR = &STRbak /* &STRbakの値を 組み込み変数 &STR に戻す */ |
57 | 手続き定義終了 |