トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     Treeダブルクリックのエリアを判断したい
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
tonakai
Åê¹ÆNo.21353
投稿日時: 2005-11-8 17:55
新米
居住地: osaka
投稿: 5
使用環境:
WinXP Pro (SP2)
Flash8 2004Pro
IE6
Treeダブルクリックのエリアを判断したい
treeにスクリプトで以下のように
ダブルクリックイベントを発生させています。

tree内のスクロールバー上でのダブルクリックは無効にしたのですが、
どのように判断したらよいかご教授願えないでしょうか。

○treeのスクリプト
onClipEvent (load) {
	flg = false;
	//クリックの判定を行うフラグ
	timer = 250;
	//ダブルクリックの判断を行うミリ秒を設定
	function myClick() {
		//クリックしたときの処理
		clearInterval(ID);
		delete ID;
	}
	function myDblClick() {
		//ダブルクリックしたときの処理
		clearInterval(ID);
		delete ID;
        this.dispatchEvent({type: "double_click"});
	}
}
onClipEvent (mouseUp) {
	if (ID == undefined) {
		ID = setInterval(this, "myClick", timer);
	} else {
		this.myDblClick();
	}
}


○メインフレーム

mt2.addEventListener ( "double_click", doubleclick );
function doubleclick(){
	trace("dubleclick");
}

tonakai
Åê¹ÆNo.21503
投稿日時: 2005-11-15 20:39
新米
居住地: osaka
投稿: 5
使用環境:
WinXP Pro (SP2)
Flash8 2004Pro
IE6
Re: Treeダブルクリックのエリアを判断したい
自己レスです。

解決しました。

クリック時に、マウスの座標を判定し
0,0より
縦スクロールバー分(約17ピクセル)と
横スクロールバー分(約15ピクセル)を除いた範囲をヒットエリアと
して判断できました。

ただ横スクロールバーは画面上表示されていませんが
Tree部品より15ピクセル分下をクリックしても有効となったので
横スクロールバーがあるのかなと推測しました。


onClipEvent (mouseUp) {
   ↓追加1行
	if ((this._xmouse>=0 && this._xmouse<=this._width-20) && this._ymouse>=0 && this._ymouse<=this._height-15) {
		if (ID == undefined) {
			ID = setInterval(this, "myClick", timer);
		} else {
			this.myDblClick();
		}
	}
}
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops