# Wijmo.Event

## Content

<div class="content__tsd">
						<div style="display:flex;justify-content:space-between;align-items:center">
							<h1>
								Event クラス
							</h1>
						</div>
						<section class="tsd-comment">
							<div class="tsd-comment">
								<div class="lead">
									<p>イベントを表します。</p>
								</div>
								<p>Wijmoのイベントは.NETのイベントに似ています。どのクラスでも、
									フィールドとして宣言することによってイベントを定義できます。
									クラスでイベントをサブスクライブするには、イベントの<a href="wijmo.event.html#addhandler">addHandler</a> メソッドを使用し、
								アンサブスクライブするには、<a href="wijmo.event.html#removehandler">removeHandler</a> メソッドを使用します。</p>
								<p>Wijmoのイベントハンドラは、<i>sender</i>と<i>args</i>の2つのパラメーターをとります。
									最初のパラメータは、イベントを発生させたオブジェクトです。
								２番目のパラメータは、イベントパラメータを含むオブジェクトです。</p>
								<p>イベントを定義するクラスは、イベントごとにイベントを発生させる <i>on[EVENTNAME]</i> メソッドがあるという.NETのパターンに従います。
									このパターンに従うと、派生クラスで <i>on[EVENTNAME]</i> メソッドをオーバーライドして、基本クラスがそのイベントを発生させる前または後にイベントを処理できます。
									派生クラスでは、基本クラスの実装を呼び出さないようにすることで、
								イベントを抑止することもできます。</p>
								<p>たとえば、次のTypeScriptコードは、コントロールの<b>valueChanged</b>イベントをオーバーライドして、
								<b>valueChanged</b>イベントが発生する前後に何らかの処理を実行します。</p>
								<pre>// 基本クラスをオーバーライドします
onValueChanged(e: EventArgs) {
  // イベントが発生する前に何らかのコードを実行します
  console.log('about to fire valueChanged');
  // オプションで、基本クラスを呼び出してイベントを発生させます
  super.onValueChanged(e);
  // イベントが発生した後に何らかのコードを実行します
  console.log('valueChanged event just fired');
}</pre>
							</div>
						</section>
						<section class="tsd-type-parameters">
							<h3>Type parameters</h3>
							<ul class="tsd-type-parameters">
								<li>
									<h4>S</h4>
								</li>
								<li>
									<h4>T</h4>
								</li>
							</ul>
						</section>
						<section class="tsd-hierarchy">
							<h3>階層</h3>
							<ul class="tsd-hierarchy">
								<li>
									<span class="target">Event</span>
								</li>
							</ul>
						</section>
						<section class="tsd-index-group">
							<section class="tsd-index-panel">
								<div class="tsd-index-content">
									<section class="tsd-index-section ">
										<div class="title">
											<div class="gc_api_tree-item_icon_img_wrapper">
												<div class="gc_api_tree-item_icon_img" data-expand="true">
												</div>
											</div>
											<h3>
												コンストラクタ
											</h3>
										</div>
										<ul class="tsd-index-list">
											<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="wijmo.event.html#constructor" class="tsd-kind-icon">constructor</a></li>
										</ul>
									</section>
									<section class="tsd-index-section ">
										<div class="title">
											<div class="gc_api_tree-item_icon_img_wrapper">
												<div class="gc_api_tree-item_icon_img" data-expand="true">
												</div>
											</div>
											<h3>
												プロパティ
											</h3>
										</div>
										<ul class="tsd-index-list">
											<li class="tsd-kind-property tsd-parent-kind-class"><a href="wijmo.event.html#handlercount" class="tsd-kind-icon">handler<wbr>Count</a></li>
											<li class="tsd-kind-property tsd-parent-kind-class"><a href="wijmo.event.html#hashandlers" class="tsd-kind-icon">has<wbr>Handlers</a></li>
										</ul>
									</section>
									<section class="tsd-index-section ">
										<div class="title">
											<div class="gc_api_tree-item_icon_img_wrapper">
												<div class="gc_api_tree-item_icon_img" data-expand="true">
												</div>
											</div>
											<h3>
												メソッド
											</h3>
										</div>
										<ul class="tsd-index-list">
											<li class="tsd-kind-method tsd-parent-kind-class"><a href="wijmo.event.html#addhandler" class="tsd-kind-icon">add<wbr>Handler</a></li>
											<li class="tsd-kind-method tsd-parent-kind-class"><a href="wijmo.event.html#raise" class="tsd-kind-icon">raise</a></li>
											<li class="tsd-kind-method tsd-parent-kind-class"><a href="wijmo.event.html#removeallhandlers" class="tsd-kind-icon">remove<wbr>All<wbr>Handlers</a></li>
											<li class="tsd-kind-method tsd-parent-kind-class"><a href="wijmo.event.html#removehandler" class="tsd-kind-icon">remove<wbr>Handler</a></li>
										</ul>
									</section>
								</div>
							</section>
						</section>
						<section class="tsd-panel-group tsd-member-group ">
							<h2>コンストラクタ</h2>
							<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
								<a name="constructor" class="tsd-anchor"></a>
								<h3>constructor</h3>
								<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
									<li class="tsd-signature tsd-kind-icon">new <wbr>Event<span class="tsd-signature-symbol">(</span>handlersChanged<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">Function</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="wijmo.event.html" class="tsd-signature-type">Event</a></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<aside class="tsd-sources">
										</aside>
										<div class="tsd-comment">
											<div class="lead">
												<p><a href="wijmo.event.html">Event</a> の新しいインスタンスを初期化します。</p>
											</div>
										</div>
										<h4 class="tsd-parameters-title">引数</h4>
										<ul class="tsd-parameters">
											<li>
												<h5><span class="tsd-flag ts-flagOptional">オプション</span> handlersChanged: <span class="tsd-signature-type">Function</span></h5>
												<div class="tsd-comment">
													<div class="lead">
														<p>この {@link イベント} にハンドラが追加または削除されたときに呼び出されるオプションのコールバック。</p>
													</div>
												</div>
											</li>
										</ul>
										<h4 class="tsd-returns-title">戻り値 <a href="wijmo.event.html" class="tsd-signature-type">Event</a></h4>
									</li>
								</ul>
							</section>
						</section>
						<section class="tsd-panel-group tsd-member-group ">
							<h2>プロパティ</h2>
							<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
								<a name="handlercount" class="tsd-anchor"></a>
								<h3>handler<wbr>Count</h3>
								<div class="tsd-signature tsd-kind-icon">handler<wbr>Count<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
								<aside class="tsd-sources">
								</aside>
								<div class="tsd-comment">
									<div class="lead">
										<p>このイベントに追加されたハンドラの数を取得します。</p>
									</div>
								</div>
							</section>
							<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
								<a name="hashandlers" class="tsd-anchor"></a>
								<h3>has<wbr>Handlers</h3>
								<div class="tsd-signature tsd-kind-icon">has<wbr>Handlers<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
								<aside class="tsd-sources">
								</aside>
								<div class="tsd-comment">
									<div class="lead">
										<p>このイベントがハンドラを持つかどうかを示す値を取得します。</p>
									</div>
								</div>
							</section>
						</section>
						<section class="tsd-panel-group tsd-member-group ">
							<h2>メソッド</h2>
							<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
								<a name="addhandler" class="tsd-anchor"></a>
								<h3>add<wbr>Handler</h3>
								<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
									<li class="tsd-signature tsd-kind-icon">add<wbr>Handler<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IEventHandler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">S</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">&gt;</span>, self<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<aside class="tsd-sources">
										</aside>
										<div class="tsd-comment">
											<div class="lead">
												<p>このイベントにハンドラを追加します。</p>
											</div>
										</div>
										<h4 class="tsd-parameters-title">引数</h4>
										<ul class="tsd-parameters">
											<li>
												<h5>handler: <span class="tsd-signature-type">IEventHandler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">S</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">&gt;</span></h5>
												<div class="tsd-comment">
													<p>イベントが発生したときに呼び出される関数。</p>
												</div>
											</li>
											<li>
												<h5><span class="tsd-flag ts-flagOptional">オプション</span> self: <span class="tsd-signature-type">any</span></h5>
												<div class="tsd-comment">
													<p>イベントハンドラを定義するオブジェクト（ハンドラのコードから'this'としてアクセス可能）。</p>
												</div>
											</li>
										</ul>
										<h4 class="tsd-returns-title">戻り値 <span class="tsd-signature-type">void</span></h4>
									</li>
								</ul>
							</section>
							<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
								<a name="raise" class="tsd-anchor"></a>
								<h3>raise</h3>
								<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
									<li class="tsd-signature tsd-kind-icon">raise<span class="tsd-signature-symbol">(</span>sender<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span>, args<span class="tsd-signature-symbol">?: </span><a href="wijmo.eventargs.html" class="tsd-signature-type">EventArgs</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<aside class="tsd-sources">
										</aside>
										<div class="tsd-comment">
											<div class="lead">
												<p>このイベントを発生させます。これにより、関連付けられたすべてのハンドラが呼び出されます。</p>
											</div>
										</div>
										<h4 class="tsd-parameters-title">引数</h4>
										<ul class="tsd-parameters">
											<li>
												<h5>sender: <span class="tsd-signature-type">any</span></h5>
												<div class="tsd-comment">
													<p>ソースオブジェクト。</p>
												</div>
											</li>
											<li>
												<h5><span class="tsd-flag ts-flagOptional">オプション</span> args: <a href="wijmo.eventargs.html" class="tsd-signature-type">EventArgs</a></h5>
												<div class="tsd-comment">
													<p>イベントパラメーター。</p>
												</div>
											</li>
										</ul>
										<h4 class="tsd-returns-title">戻り値 <span class="tsd-signature-type">void</span></h4>
									</li>
								</ul>
							</section>
							<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
								<a name="removeallhandlers" class="tsd-anchor"></a>
								<h3>remove<wbr>All<wbr>Handlers</h3>
								<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
									<li class="tsd-signature tsd-kind-icon">remove<wbr>All<wbr>Handlers<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<aside class="tsd-sources">
										</aside>
										<div class="tsd-comment">
											<div class="lead">
												<p>このイベントに関連付けられたすべてのハンドラを削除します。</p>
											</div>
										</div>
										<h4 class="tsd-returns-title">戻り値 <span class="tsd-signature-type">void</span></h4>
									</li>
								</ul>
							</section>
							<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class">
								<a name="removehandler" class="tsd-anchor"></a>
								<h3>remove<wbr>Handler</h3>
								<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class">
									<li class="tsd-signature tsd-kind-icon">remove<wbr>Handler<span class="tsd-signature-symbol">(</span>handler<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">IEventHandler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">S</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">&gt;</span>, self<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
								</ul>
								<ul class="tsd-descriptions">
									<li class="tsd-description">
										<aside class="tsd-sources">
										</aside>
										<div class="tsd-comment">
											<div class="lead">
												<p>このイベントからハンドラを削除します。</p>
											</div>
										</div>
										<h4 class="tsd-parameters-title">引数</h4>
										<ul class="tsd-parameters">
											<li>
												<h5>handler: <span class="tsd-signature-type">IEventHandler</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">S</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">T</span><span class="tsd-signature-symbol">&gt;</span></h5>
												<div class="tsd-comment">
													<p>イベントが発生したときに呼び出される関数。</p>
												</div>
											</li>
											<li>
												<h5><span class="tsd-flag ts-flagOptional">オプション</span> self: <span class="tsd-signature-type">any</span></h5>
												<div class="tsd-comment">
													<p>イベントハンドラを定義するオブジェクト（ハンドラのコードから'this'としてアクセス可能）。</p>
												</div>
											</li>
										</ul>
										<h4 class="tsd-returns-title">戻り値 <span class="tsd-signature-type">void</span></h4>
									</li>
								</ul>
							</section>
						</section>
					</div>