■3070 / inTopicNo.21) |
Re[5]: フォームヘッダ部はどこから来たのでしょうか?
|
□投稿者/ Oiller -(2007/10/11(Thu) 09:39:59)
| 2007/10/11(Thu) 10:50:21 編集(投稿者)
アックンさん、おはようございます。
Oillerです。
> ヘッダとフッタは、メニューの「表示」にあります。またメニューの「書式」には、[行セレクタを使う]、[フォーム操作バー]、[グループ操作バー]があります。 > 「フォーム操作バー」は、フォームを新たに作成すると必ず定義されます。
先に、頂いた今村さんのご指摘を受けて「表示」の表記の意味が分かりましたので、その後いろいろそのあたりを弄ってみていました。 その結果フォームの定義局面ではフォーム(シートオブジェクト)というのはこんな設計構造になっているのではないかと想像するに至りました。
┌標準(1) │ファミリ(1) (定義時 │ワークスペース(1) シート)│フォーム操作バー(0〜1) Form┼グループ操作バー(0〜1) │フォームヘッダ部(0〜1) │フォーム明細部(1) └フォームフッタ部(0〜1)
上のダイヤグラムは以下のようなことを表しています。
1.外見上、定義時にフォーム(シートはフォームの実体)が直接含むオブジェクトは次の8つに限られる。
(1)標準 (2)ファミリ (3)ワークスペース (4)フォーム操作バー (5)グループ操作バー (6)フォームヘッダ部 (7)フォーム明細部 (8)フォームフッタ部
2.フォームに直接含まれるオブジェクトの個数はオブジェクト名の後の()内の数字で表される。
3.(1)は必ず含まれることを意味し、(0〜1)は空でもよいし1個だけ含まれても良いことを示す。同時に2個以上含むことがないことも示す。
4.オブジェクトはオブジェクトを含む可能性があり、含むものが親で含まれるものを子と呼ぶ。
5.「直接含まれる」とは直接の親子関係をさす。
6.フォーム定義画面の「表示メニュー」内のチェックボタン「ヘッダ」はフォームヘッダ部」オブジェクトを「定義中のフォーム」オブジェクトに含めるか否かを決める「プロパティエディタ」である。
7.フォーム定義画面の「表示メニュー」内のチェックボタン「フッタ」はフォームフッタ部」オブジェクトを「定義中のフォーム」オブジェクトに含めるか否かを決める「プロパティエディタ」である。
8.フォーム定義画面の「書式メニュー」内のラジオボタン「フォーム操作バー」(なし、上、下)は「フォーム操作バー」オブジェクトを「定義中のフォーム」オブジェクトに含めるか否かと含めた場合の置き場所を決める「プロパティエディタ」である。
9.フォーム定義画面の「書式メニュー」内のラジオボタン「グループ操作バー」(なし、上、下)は「グループ操作バー」オブジェクトを「定義中のフォーム」オブジェクトに含めるか否かと含めた場合の置き場所を決める「プロパティエディタ」である。
10.前項の6〜9の方法でダイヤグラム上でオブジェクトの個数を(0〜1)とあらわされたオブジェクトが、定義中オブジェクトに出現する回数のすべてをコントロールできる。(分かりにくくてすみません。何と表現すればいいのか悩みます…。)
11.フォームの新規作成時に使うウィザード内の様式(白紙、カード、カード(ダイアログ)、一覧表、伝票、メイン&サブフォーム)等の働きを観察していると、8つのオブジェクトのうち必須の4つのオブジェクトを作ったうえで4つのオブジェクトをウィザードの選択状況に応じて作成するしないを決めている。
前置きが長くなり過ぎましたが、「フォーム操作バー」は前項8のやり方で定義画面にて消すことができます。 ですから、「フォーム操作バー」は「新規作成時」という状況に応じて作成されますがフォームに必須というほどではなく、ユーザーに親切にするつもりで生成されているというのが私の解釈です。 起動したフォームが消せなくなると困りますからね。
> これらのオブジェクトは、原則としてユーザが自由な位置に複数個を配置できるわけではなく、特定の位置に1個だけ定義できます。
その通りだと思います。このあたりのことを(1)や(0〜1)で表してみました。
> それとは違って、「フォームツールパレット」内のオブジェクト(テラベル〜扇形など)は、ユーザが制約はあるもののかなり自由な位置に複数個を配置できます。 改めて、「フォームツールパレット」を眺めていましたら、先にメソッドのヘルプから作成したメソッド一覧表にないオブジェクトがでてきました。 追加しなければいけませんね。 暇をみて確認し追加したいと思います。
> オブジェクトによって、メニューから選ぶのと、「フォームツールパレット」で選ぶのとがあるのは、このようなオブジェクトの性格の違いや定義の仕方の違いがあるのもひとつの理由だと私は思ってます。 > 設定箇所があちこちに散らばっているせいで、最初は探すのがたいへんですね。 > とくにヘッダ・フッタをどうやって定義するのか迷う人は多いと思いますよ。
私も最初は何て分かりにくいのだろうと思っていたのですが、弄っているうちにどのフォームも造りは先のダイヤクグラムのレベルまで抽象化してしまえば全部同じなんだということがわかりました。 4つのオブジェクトの「消す、出す」の操作がユーザに許されているので、必要に応じてプロパティエディタを使って「消す、出す」を行えばよいだけなんですね。 あとはエディタのある場所を4つ覚えればいいだけです。 どうも、レポートも似た構造なようなのでこんな見方ができれば、役にたつのではないでしょうか。
> 1)もしまだ過去ログを参考にされてないときは、当掲示板だけでなく、幅田さんの掲示板の過去ログも参考にしてください。 > http://www.fuku3.com/~habata/kakobbs.htm 過去の桐井戸端BBS > http://www.fuku3.com/~habata/index.htm こちらがトップページ こちらは、桐5の一括処理をたくさん書いていた時は日参していた時期もありました。 現在BBSは停止中なようですね、残念です。 しかし、ログをみましたが当時よりもwin桐についての内容がものすごく充実してますね。びっくりしました。 順次よんで勉強したいと思います。
> 2)「オブジェクトのリスト」に「属性」も表示してみてください。 この二つのツールはとても便利ですね、しかしなれるまでが大変でした。 まだまだ、目も触れていないところがたくさんありそうです。 毎日ヘルプで「オブジェクトのリスト」の用語を調べています。 が、忘れるのも早いからなー。 蓄積がゼロになってしまうのが心配です。
|
|