🐱

FileMakerで私が今年一驚いたtips

3 min read 5

はじめに

2021年も残すところ後わずかですが、FileMaker使いのみなさんいかがお過ごしでしょうか。
え?元Access使いだった?大丈夫ですよ、私も太古の昔に使ってましたから...もう胸を張っていいんですよ。いゃいゃ今はもうKintone使ってるって?結構なことでございますね、サイボウズは私も馴染みが深いので魅力的なのは分かります。クソッ ガッデム!

そんなFileMaker使いの皆さまに、私が今年一驚いたtipsを紹介したいと思います。


本題

FileMakerを触っていると、つくづくその便利さ・お手軽さに幸せを噛みしめる場面は、多いと思います。と同時に、あとちょっとの痒いところに手が届かないもどかしさで枕に涙することも、同じくらい多いですよね。

割とガバめで良ければ最速で機能を実装できる
が、UIに丁寧なケアを施そうとすると途端にハードルが上がる

そんなツンデレFileMakerで私が今年一驚いたのは、ボタンバーに関するtipsです。
ひょっとしたら、以前から知っていたって方もいらっしゃるかもしれません。


ボタンバーの闇

FileMaker v14 から実装されたボタンバー、ボタンを同じスタイルで綺麗に縦や横に並べることができる、というある意味「え?逆に今まで何で無かったの?」っていうくらいの代物。

これで、沢山のボタンを整列させたりグループ化したり...といった面倒な煩わしさから解放されて喜んだ方も多いでしょう。私も当初はそうでした。ところが、使いこなしていく内にどうにもツンデレ仕様に直面します。


こんな感じでボタンバーを使用したとして、ある条件の時は特定のボタンを非表示にしたい。

こんな場面、割とありますよね。ユーザーが間違って押さないように、もしくは押せるボタンの明示という気遣い。むしろUIとしては当然の仕込み、義務と責任。

え?押されてもスクリプト側で実行されないようにする?

あなたとは楽しい酒は飲めないわね...

ともかく、ツンデレメーカーはやってくれます。
先程の3つ並んだ状態から、例えば真ん中のボタン(セグメント)を非表示にすると

なんじゃこりゃぁあ!!!

松田優作もビックリですよ、そりゃ。
確かに非表示になってるけど、それ以外のボタンの大きさが変わって鬼ダサいやん...そんな隠れん坊を元WEBデザイナーの私は㍉も望んでない。必要なのはCSSで言うところのvisibility:hiddenであって決してdisplay:noneではない。

こうして私はそれ以来、ボタンバーに失望し使うことはなくなった...


ボタンバーの光

相変わらずの旧来のボタンを使っての整頓・グループ化をするストレスマッハな日々の中で、ふと目にしたつぶやき...

?! そんな使い方が!! あなたが神かッ!!

そうか、そういうことか!
このツンデレ仕様は、それを想定したClarisの考えだったのか!(たぶんチガウ

とにかくこれで色々なことが氷解、そして可能に。
つまり先ほどのボタンバーの例で言えば、予めこのようにしておき、

それぞれにオブジェクトを隠す条件と、片方にアイコン色を変える条件付き書式を設定



以上のようにすれば、$$flgを 0 or 1 にすることで、

このようにボタンの幅を保ったまま、スマートに切り替えが出来ると。つまり押せる/押せないの切り替えができるようになるわけで...これで勝つる!!!

パトラッシュ...もう、ボタンを重ねておかなくてもいいんだね...

というか...
またもやこんな小細工が必要になるとか、相変わらずのツンデレメーカーっぷり。


ボタンバー最強説

まぁとにかく、このtipsを知ったことで色んな可能性が広がっていった。

ネイティブでトグルボタンが作成できたり

こんなこともしてみたり

らじばんだり

まさかのボタンバーでアニメーションが可能に。

まぁ...えー...っと制御は鬼大変なんですけどね


おわりに

いかがだったでしょうか。
ボタンバーでのセグメントの表示/非表示を利用するtipsにより、今までボタンを2つ重ねて押せる/押せないを切り替えていたことが、随分と楽に行えるようになりましたね。2つ重ねは本当に面倒臭かった。何よりメンテナンス性が非常に悪い。

このtipsを知らなかった方は、ゼヒ使いこなしてイカすUIを実現させてみて下さい。また、ボタンバーの面白い使い方を発見した方はゼヒ教えて下さい。一緒に実務に役に立たないナレッジを溜めていきませんか。

それでは
Let's enjoy FileMaker!

Discussion

すごく参考になりました。このテクニックを一覧で使ったのですが、その場合対象でないレコードも反応してしまって意図しない動作になったので、いろいろ調整中です。
一度別レイアウトを表示して、そこから一覧に戻ると表示が正しくなるのですが。
はたしてそれでいいのか…と思いつつ。

例えばフィールドが空かどうかでセグメントを切り替える、ってこととはまた違います...よね?

式が評価されないってことなんですかね...

https://share.getcloudapp.com/4guZJL6z

ご丁寧にありがとうございます。
こちら自分のMacの方の環境で確認したのですが

  1. 値をフィールドで直接変更すると問題なし
  2. スクリプトで値を変更させると、表示が全体的におかしくなる

とう結果でした。
2になった場合も、レイアウトを別のものを表示して、戻ると問題なし…。
自分のやり方が何かおかしいのかな?と思いつつ、こんな症状でした。ご参考まで。

確かに...
スクリプトで値を設定をすると、表示がおかしくなる現象が確認できました。

こちら win10 FMver19.3.2 ですので、macでの現象が同様に解決するかは分かりませんが、
値の設定直後にレコード確定を入れると、表示問題は解決されました。

https://youtu.be/IY0okPO6_DE

ボタンバーセグメントのアクティブになる仕様が、色々と怪しいかもしれませんね。

おお、確定でうまくいきましたか。ありがとうございます。
実はこの処理、最初は計算フィールドで1にしたり空欄にしたりしていたのですが、
そうなるとレコード確定やウインドウの再表示でもうまくいかず、レイアウトを別のものに一度変更し、戻したりしてました。

使う人間が癖を踏まえておく必要がありますね。
癖さえわかってしまえば、すごく有益なテクニックだとおもいます。

動画わかりやすかったです。ありがとうございました!

ログインするとコメントできます