JMP が提供するさまざまな状態ハンドラーを使用してみましたが、使用すればするほど問題が発生することがわかりました。 それらを使用したい理由はたくさんありますが、おそらくそれらを避けたい理由はさらにたくさんあります。 最大の問題は、通常、トリガーが多すぎるように見え、返される値があまり役に立たないことです。
Subscribe To Data Table List() は、これらのほとんどがどのように機能するかを示す非常に良い例です。 さまざまなイベントにさまざまな機能を追加できます (ただし、面倒な場合もあります)。 データ テーブル リストに何かが起こる (追加、削除、名前変更) たびに Subscribe To Data Table List() がトリガーされ、たとえばデータ テーブル名 (または変更されたデータ テーブルの数) のみが返される場合、Subscribe To Data Table List() がどのように機能するか想像できます。 ...) そしてそれ以上は何もありません。
以下にいくつかの問題と提案を示します。
ホバーラベル
問題
ホバーしたいポイントに近づくとトリガーされるようです。 これにより複数のトリガーが発生し、JMP が不必要に遅くなり、場合によってはこの速度低下が非常に大きくなることがあります。 また、ポイントの上にマウスを置くとすぐにトリガーされます -> 複数の要素上でマウスを速く動かすと、複数回トリガーされます。 また、ホバーオーバー時に複数回トリガーされます (前述のすべてに関連している可能性があります)
提案
ホバーラベルがトリガーされるときの精度を高めます。 イベントをトリガーするときに「遅延」の可能性を追加します。たとえば、ユーザーが同じ要素の上に0.2秒間ホバーした後にホバーラベルをトリガーできるようにしたいと考えています。 また、ホバー ラベルをいつトリガーするかを決定するために「セーフ ゾーン」を選択できるようにします。
行状態ハンドラー
問題
トリガーされる回数が多すぎて、すべてのイベントが発生します。 行を削除すると、行状態ハンドラーが削除されるようになるバグがあります。
提案
特定の行の状態変化のみをキャプチャする (そしてバグを修正する) 方法があれば、おそらく十分でしょう。
フィルター状態ハンドラー
問題
トリガーが多すぎます。 1 つの例として、フィルターを確認しただけでも状態ハンドラーがトリガーされます。
提案
フィルター状態ハンドラーから不要なトリガーを削除するか、どの状態がどの関数をトリガーするかを選択できるようにします。
スケジューラ
問題
一度に使用できるスケジューラは 1 つだけであり、スケジューラ ウィンドウを非表示にすることはできません。
提案
プライベート スケジューラ (現在はウィンドウを非表示にし、ユーザーがウィンドウを閉じないことを願っています) と複数の異なるスケジューラを同時に作成できるようにします。
Hover ラベルが遅延すると「ラグい」と感じられるのではないかと心配しています。
「ライブ」ホバー ラベルがどれほどエキサイティングに感じられるかという素晴らしい例がネット上にあります。
https://wid.world/world/#lpfghg_p90p100_z/US;FR;DE;CN;ZA;GB;WO/2020/eu/k/p/yearly/l/false/3.516/100/curve/false/country

多分:
しないでください以前とまったく同じ場合はコンテンツを更新しますか?
ただ:
既存のホバーラベルを新しい位置に配置します。
@xxvvcczz 、開発者~への変更の可能性を調査していますRowState ハンドラーの作成そしてフィルター変更ハンドラーの作成。 共有する更新はまだありません。
これに関する最新情報はありますか? 数か月経ちました。
行状態ハンドラーを修正してください。
マウスアップ時に選択イベントを取得し、httpリクエストを送信してユーザーのデータを取得したいのですが、現時点では信じられないほど遅くて困難です。 この機能を実現するために、選択ツール全体をネズミ捕りとして書き直すことまでしました。選択イベントの終了時に行状態ハンドラーを 1 回起動するだけです。
https://community.jmp.com/t5/Discussions/Is-there-a-way-to-make-the-rowstate-handler-less-laggy/mp/550590
このリストを提出していただき、ご提案をいただきありがとうございます。 現在調査中です。
@jthi確かに、スケジューラは使いにくいです。 でニュースフィードスケジューラ オブジェクトを、作成されるウィンドウから独自のウィンドウに移動しましたが、これではシングルトンの問題は解決されません。 (Utility.jsl の 53 ~ 64 行目。 httpServer.jsl の 120 行目から使用されています。) 削除されたら、ウィンドウ内に存在する必要はまったくないと思います。おそらくハンドルを保持するだけで済みます。 でファイルスナッパーrunprogram といくつかの DOS コマンドを使用した Windows のみのアプローチを使用しました。 シングルトンの問題を除けば、スケジューラーを使用することを好みます。 {Windows のみで将来性がないため、まだ副作用がある} ため、これは行わないでください。 どちらの場合も、JSL は、JMP にアイドル時間があるとき (おそらく wait() の間) にのみ実行されます。