初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-04-02 13:17:11

ていく
Member

ダブルクリックでスクリプトを実行する方法

お世話になります。win7、FM13advancedを使用しています。

社内共有で使うカレンダー型の予約管理システムを作っており、日付をダブルクリックしたら予約されるようにしたいのですが
スクリプトで擬似的にダブルクリックを表現する方法はありますでしょうか?
過去ログを見た際にGet ( 現在の時刻 UTC ミリ秒 ) を使用すればできそうな感じでしたが使い方がいまいち分かりません。
どうかご教授よろしくお願い致します。

Offline

#2 2017-04-02 13:38:02

Hiro
Member

Re: ダブルクリックでスクリプトを実行する方法

FM標準でダブルクリックの検知はできないので、
Shiftキー(など修飾キー押し)+クリックの併用で発火させる案は如何?
Shiftキー押しは「Get(アクティブ修飾キー)=1」で判別可能です。

Offline

#3 2017-04-02 13:50:26

Re: ダブルクリックでスクリプトを実行する方法

グローバル変数を使って、クリック回数をカウントします

そんな方法をサンプルにして
http://yahoo.jp/box/4tbEQp
にアップしました。

サンプルではクリックの間隔の時間制限設定してます
あんまり長いと エラーになります。

Last edited by シーラカンス (2017-04-02 13:51:45)

Offline

#4 2017-04-02 15:32:45

Shin
Member

Re: ダブルクリックでスクリプトを実行する方法

フラグの変数とOnTimer スクリプトをインストール を使って実現できるのですが、普通の、タタッ というクリックには追いつけず、タッタッ というゆっくりのダブルクリックにしか対処できません。
https://www.dropbox.com/s/ggfyad9kztm0u … 7.zip?dl=0

Last edited by Shin (2017-04-02 15:40:40)

Offline

#5 2017-04-02 15:33:45

ていく
Member

Re: ダブルクリックでスクリプトを実行する方法

Hiro様、シーラカンス様ありがとうございます。
パソコンが苦手でキーボードの配列が分からない人も多い職場なのでクリック回数のカウントのやり方でいこうと思います。

シーラカンス様へ
サンプルありがとうございます。スクリプト:ダブルクリック内の if[Get ( タイムスタンプ )-$$t1>2] の箇所ですが
最初にボタンを押してから1秒以内に押せたらダブルクリックの処理に分岐すると解釈しましたが、これを0.5秒以内にするにはどうすればよろしいでしょうか?

Offline

#6 2017-04-02 15:36:39

Re: ダブルクリックでスクリプトを実行する方法

ていく wrote:

シーラカンス様へ
サンプルありがとうございます。スクリプト:ダブルクリック内の if[Get ( タイムスタンプ )-$$t1>2] の箇所ですが
最初にボタンを押してから1秒以内に押せたらダブルクリックの処理に分岐すると解釈しましたが、これを0.5秒以内にするにはどうすればよろしいでしょうか?

考えたこともないなぁ
タイムスタンプが秒以下のものないので
いまのわたしには無理かな?
OnTimerスクリプトをインストールでも使うとできるかもしれないけど
いま頭そこまで行けないので ごめんなさい
時間のあるときに 考えて見ますが
その間にどなたかヘルプしてもらえるといいのですが。。。

Offline

#7 2017-04-02 17:38:09

ていく
Member

Re: ダブルクリックでスクリプトを実行する方法

シーラカンス様へ
Get ( タイムスタンプ )のところをGet ( 現在の時刻 UTC ミリ秒 )に変え
if[Get ( 現在の時刻 UTC ミリ秒 )-$$t1>500]にすると上手くいった感じがしました。
これで様子をみていきたいと思います。
教えていただいてありがとうございます。
ほかの皆様もありがとうございました。

Offline

#8 2017-04-02 17:54:17

Re: ダブルクリックでスクリプトを実行する方法

FMP12にはない機能でした。

タイムスタンプにしたのは
日付がまたぐことを考慮したんですが・・。
現在の時刻(UTC)は日付もあるんで?

Offline

#9 2017-04-02 18:09:59

Hiro
Member

Re: ダブルクリックでスクリプトを実行する方法

意図する目標が、
> カレンダー型の予約管理・・・日付を〇〇したら予約されるようにしたい
だとすると、ちょっと視点を変えて、
標準クリック操作を使って、押す度に予約「作成」と「削除」が交互にできるようにするのも一案かと?
類似の質問とその解答サンプルが過去ログにありますのでご覧になってみて下さい。
過去ログ:ID#49 「シフト表のポータルレコードに、1か月分の複数日のレコードの内容を取得したい」
サンプル:「月次シフト表.fmp12」

Last edited by Hiro (2017-04-02 18:22:25)

Offline

#10 2017-04-02 19:36:14

ていく
Member

Re: ダブルクリックでスクリプトを実行する方法

シーラカンス様
あまり自信がないのですが、UTCとは1970年1月1日0時0分0秒からの経過時間をミリ秒で表したもので
日付が跨げば、その分数値が加算されるので問題ないのかと思っていました。

Hiro様
アドバイスありがとうございます。教えていただいた方法も検討にいれてみようと思います。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 9 queries executed - Memory usage: 572.83 KiB (Peak: 588.69 KiB) ]