みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
すべてのフィールドを上下中央寄せしたいです
スライド印刷も使うのですが、どのようにしたらできますか?
例えば商品フィールドが3行になったときに、広くなってしまった価格フィールドの中央に価格を表示させたいです
しかしながら上寄せでないとスライド印刷はできません
価格が2行になることはないので、価格はスライドなしにして商品と同じ高さにしておくと、今度は商品が1行のとき(スライドが実行されても)
価格にひっぱられて余白ができてしまいます
この画像のようにしたいです
https://image.itmedia.co.jp/ait/article … -scr01.gif
力技を思いつきました
文字数を数えてそれが1行なら1行用のフィールドを表示
2行なら2行用を、それ以外は非表示にする、スライド印刷は使わないが
非表示だけではスペースがあいてしまうので、それぞれの行に対応した同じ大きさの
オブジェクトをスライド設定にして配置(オブジェクトは対応しているフィールドが非表示のときには非表示にする)
といった具合に、想定される最大行数まで用意して置くのを
思いつきましたが、他にもっと簡潔な方法はありますか?
レイアウト編集ではとても編集が大変で、パッと見なにがなにやらわからない感じにはなりそうですが…
GetLayoutObjectAttribute関数でフィールドの高さの最大値を取得して、それに応じて各フィールドの上に「パディング」オブジェクトを置けばいいと思ったのですが、
この関数がプレビューモードで値を返してくれないようです。(プレビュー前の現在のレコードでだけ取得できる。オブジェクトの「隠す」計算式で変数に設定して確認した。)
関数ヘルプ
https://help.claris.com/ja/pro-help/con … ibute.html
のメモに「オブジェクトに自動サイズ変更が設定されている場合、返される属性はサイズ変更されたオブジェクトの境界の現在の状態に基づきます。」とあるし、以前は取得できてたと思うのですが(FM19v6でしか確認してません)
最大行数がわかれば、ですが。
計算フィールドで、目的のテキストの前に、(最大行数 ー 1) 個の改行を追加しておきます。
そのオブジェクトを配置し、行間を通常の1/2にしておきます。
でいいのですが。最大行数を求めるのが、一筋縄ではいかないんですよね。
Last edited by Shin (2023-07-04 11:25:20)
Offline
Pages: 1
[ Generated in 0.011 seconds, 9 queries executed - Memory usage: 551.43 KiB (Peak: 578.2 KiB) ]