タグ付けされた質問 「event-handling」

イベント処理は、ソースと1つ以上のサブスクライバー間のメッセージの処理に関するコーディングスタイルです。ソースのポイントリスナーは、サブスクライブされたコードがソースから発生したメッセージを消費できる方法を提供します。


5
変数の値が変更されたときにイベントをトリガーする方法は?
現在、Visual Studioを使用してC#でアプリケーションを作成しています。変数の値が1のときに特定のコードが実行されるように、コードを作成したいと思います。ifステートメントを使用できることはわかっていますが、問題は非同期プロセスで値が変更されるため、技術的には値が変更される前にifステートメントを無視できることです。 変数の値が変化したときにイベントがトリガーされるようにイベントハンドラーを作成することはできますか?もしそうなら、どうすればこれを行うことができますか? ifステートメントがどのように機能するかを誤解していた可能性があります。どんな助けでも大歓迎です。

10
イベントハンドラーの実行順序
次のように複数のイベントハンドラーを設定した場合: _webservice.RetrieveDataCompleted += ProcessData1; _webservice.RetrieveDataCompleted += ProcessData2; イベントRetrieveDataCompletedが発生したときにハンドラーはどの順序で実行されますか?それらは同じスレッドで実行され、登録された順序で順番に実行されますか?

7
パラメータ付きのJavascriptイベントハンドラ
イベントといくつかのパラメーターを渡すeventHandlerを作成したいと思います。問題は、関数が要素を取得しないことです。次に例を示します。 doClick = function(func){ var elem = .. // the element where it is all about elem.onclick = function(e){ func(e, elem); } } doClick(function(e, element){ // do stuff with element and the event }); 'elem'は無名関数の外部で定義する必要があります。渡された要素を匿名関数内で使用するにはどうすればよいですか?これを行う方法はありますか? そして、addEventListenerはどうですか?addEventListenerを介してイベントを渡すことができないようです。 更新 'this'の問題を修正したようです doClick = function(func){ var that = this; this.element.onclick = function(e){ func(e, that); …



2
Node.jsでCTRL + Cを検出する
このコードは別のSOの質問から取得しましたが、ノードがttyの代わりにprocess.stdin.setRawModeを使用するように文句を言ったので、変更しました。 前: var tty = require("tty"); process.openStdin().on("keypress", function(chunk, key) { if(key && key.name === "c" && key.ctrl) { console.log("bye bye"); process.exit(); } }); tty.setRawMode(true); 後: process.stdin.setRawMode(true); process.stdin.on("keypress", function(chunk, key) { if(key && key.name === "c" && key.ctrl) { console.log("bye bye"); process.exit(); } }); いずれにせよ、それはまったく応答しないノードプロセスを作成するだけで、最初は不平を言ってttyからエラーをスローし、2番目は何もせずにノードのネイティブCTRL+Cハンドラーを無効にするだけなので、私がノードを終了することさえありませんそれを押してください。どのように私は正常に処理することができますCtrl+をCにWindowsの?

4
イベントでjQueryを使用してクリックされた要素を取得しますか?
次のコードを使用して、動的に生成されたボタンがクリックされたことを検出しています。 $(document).on("click",".appDetails", function () { alert("test"); }); 通常、実行した場合は、クリックされた要素を取得するために$('.appDetails').click()使用でき$(this)ます。上記のコードでこれをどのように達成しますか? 例えば: $(document).on("click",".appDetails", function () { var clickedBtnID = ?????? alert('you clicked on button #' + clickedBtnID); });

4
event.preventDefault()vs。return false(jQueryなし)
event.preventDefault()とreturn falseは同じかと思いました。 私はいくつかのテストを行いました、そしてそれは たとえば、イベントハンドラが古いモデルを使用して追加された場合 elem.onclick = function(){ return false; }; 次に、のreturn falseようなデフォルトのアクションを防ぎますevent.preventDefault()。 たとえば、を使用してイベントハンドラが追加さaddEventListenerれた場合 elem.addEventListener( 'click', function(e){ return false; }, false ); 次に、return falseデフォルトのアクションを妨げません。 すべてのブラウザはこのように動作しますか? との間にもっと違いはevent.preventDefault()ありreturn falseますか? 場合によっては、そのreturn falseようevent.preventDefault()に動作することに関するドキュメント(MDNでは見つかりませんでした)はどこにありますか? 私の質問はプレーンなJavaScriptに関するものであり、jQueryに関するものではないため、両方の質問のタイトルがほぼ同じであっても、event.preventDefault()の重複としてマークしないでください。

1
SwiftUIで右クリックを検出するにはどうすればよいですか?
私は、 SwiftUIを知るのに役立つ簡単なMinesアプリを作成しています。そのため、プライマリクリック(通常はLMB)で「掘る」(そこに地雷があるかどうかを明らかにする)ようにし、セカンダリクリック(通常はRMB)でフラグを付けるようにします。 掘り出し作業中!しかし、フラグの配置方法がわかりません。セカンダリクリックを検出する方法がわからないためです。 これが私が試していることです: BoardSquareView( style: self.style(for: square), model: square ) .gesture(TapGesture().modifiers(.control).onEnded(self.handleUserDidAltTap(square))) .gesture(TapGesture().onEnded(self.handleUserDidTap(square))) 以前に示唆したように、によって返される関数はhandleUserDidTapクリック時に正しく呼び出されますが、によって返される関数はhandleUserDidAltTap、Ctrlキーを押したときにのみ呼び出されます。それがコードが言っていることなので、それは理にかなっています...しかし、セカンダリクリックを登録するAPIが見当たらないので、他に何をすべきかわかりません。 私もこれを試しましたが、動作は同じように見えました: BoardSquareView( style: self.style(for: square), model: square ) .gesture(TapGesture().modifiers(.control).onEnded(self.handleUserDidAltTap(square))) .onTapGesture(self.handleUserDidTap(square))
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.