みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FMpro13
ボタンを作成し、最上部にカスタムダイアログを表示したのですが、今の状態だとOKキャンセルでもボタンにかけたスクリプトが作動してしまいます。
カスタムダイアログ内のOK・キャンセルを使って動作させるかさせないかを分岐することはできますか?
その場合は計算式を入れるのでしょうか?アドバイス宜しくお願いします。
取得関数
Get ( 最終メッセージ選択 )
をお調べ下さい。
ヘルプをリンクしておきますね
http://www.filemaker.com/help/13/fmp/ja … html#52049
Offline
OSが書かれてないので無関係かもしれませんが、バグの情報をひとつ。
ver.14でも残っているカスタムダイアログのひどい挙動があり、
Windowsの場合、ESCキーでもボタン1を押した扱いになってしまいます。
デフォルトでボタン1をOKとしておきながらの腐った仕様ですが、
以前から指摘しても放置されっぱなしのバグです。
カスタムダイアログを使って何らかの分岐を組む場合、
ユーザーにキーボード操作を好む方がいるのであれば、
安全側に倒すために、ボタン1をキャンセル等中止処理に割り当てた方が良いかも知れません。
honda様
怖いですね。キーボード操作を好んで使う人が多いので気をつけます。
macを使ってますが、macでもそうだということでしょうか。
チポ様
ありがとうございます。
正しい使い方?入れ方?がよくわかりません。
"キャンセル" & Get ( 最終メッセージ選択 )=2
上記のような計算式をいれてみましたがだめでした。
ボタンにはキャンセルという文字を表示しておきたいのですが、&で繋がないと設定画面が閉じません。
If[Get ( 最終メッセージ選択 ) = 1]
ボタン1の作業
Else If[Get ( 最終メッセージ選択 ) = 2]
ボタン2の作業
Else[Get ( 最終メッセージ選択 ) = 3]
ボタン3の作業
End If
全部のステップが必須では有りませんよ。
Macでは
esc
は何もしません
return・enter
はデフォルト、ボタン1です。
だったと。。
今確かめられません、、ご自分でお試し下さい。
Last edited by チポ (2015-05-22 17:02:27)
Offline
キャンセルボタンを押した場合は次のステップに進みたくないのなら
分かりやすく書くと
If[Get ( 最終メッセージ選択 ) = 2]
全スクリプト終了
End If
にしたらいい。
Offline
If[Get ( 最終メッセージ選択 ) = 1]
ボタン1の作業
Else If[Get ( 最終メッセージ選択 ) = 2]
ボタン2の作業
Else[Get ( 最終メッセージ選択 ) = 3]
ボタン3の作業
End If
↑これはどこに入れれば良いのでしょうか…
1行目をデフォルトボタンの指定に入れて、2行目も同じように…ということですか?
それともカスタムダイアログの中ではなく、ボタンのスクリプトステップの中に組み込むのですか?
下のご説明もありがとうございます。
旅人様
できました。ありがとうございました!
Pages: 1
[ Generated in 0.011 seconds, 9 queries executed - Memory usage: 517.36 KiB (Peak: 522.27 KiB) ]