メイン コーダーズルーム【スクリプト系】 ユーザによるスクロールを禁止したい | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
flashlite | Åê¹ÆNo.39604 投稿日時: 2008-7-21 2:05 |
常連 居住地: 東京 投稿: 69
使用環境:
WinXP Win7 Flash CS3,Flash CS5.0 FlashPlayer FlashLite 1.1、2.0、2.1、3.1(下記) Docomo SO903i SH-08A SoftBank 911T 922SH 945SHG au W61SA S004 Disney DM001SH Willcom Windows Mobile WX341k |
ユーザによるスクロールを禁止したい FlashCS3、ActionScript3.0環境です。
現在、入力可能なテキストフィールドとページ切り替えボタンを配置してます。 1行目から10行目を表示して、ユーザが「次ページ」ボタンを押すことで scrollV +=10; のような形で 11行目から20行目を表示させていく という感じの仕様です。 このテキストフィールドをユーザがスクロールできないようにすることは可能でしょうか? スクロールバーは未使用、マウススクロール無効に設定しているのですが 文字を選択してドラッグされるとスクロールしてしまいます。
|
c-geru | Åê¹ÆNo.39606 投稿日時: 2008-7-21 2:15 |
職人 居住地: 文京区本郷 投稿: 209
使用環境:
10.6.8+ CS5.5 Win7+ CS4 |
Re: ユーザによるスクロールを禁止したい 引用:
スクロールバーは未使用、マウススクロール無効に設定しているのですが 「入力可能なテキストフィールド」という時点で、文字選択時のスクロールを回避できないと思うので、予めテキストを10行ずつ表示するというのではダメですか? |
flashlite | Åê¹ÆNo.39607 投稿日時: 2008-7-21 2:32 |
常連 居住地: 東京 投稿: 69
使用環境:
WinXP Win7 Flash CS3,Flash CS5.0 FlashPlayer FlashLite 1.1、2.0、2.1、3.1(下記) Docomo SO903i SH-08A SoftBank 911T 922SH 945SHG au W61SA S004 Disney DM001SH Willcom Windows Mobile WX341k |
Re: ユーザによるスクロールを禁止したい ちなみに、入力TextFieldは
フォントサイズ18ポイント _明朝 で設定されています。 引用:
回答ありがとうございます。 入力可能なテキストフィールドという時点で、回避できないですか・・・ 残念です。 c-geruさんの方法は、入力不可能なダイナミックテキストフィールドであれば、よかったのですが 入力可能なテキストフィールドだと、ユーザが1文字でもDeleteした場合 かなり大変で 後ろに、次のページの頭の部分の文字を追加しないといけなくて、それをどうやればよいのかでハマってしまいます。
|
c-geru | Åê¹ÆNo.39609 投稿日時: 2008-7-21 3:06 |
職人 居住地: 文京区本郷 投稿: 209
使用環境:
10.6.8+ CS5.5 Win7+ CS4 |
Re: ユーザによるスクロールを禁止したい 引用:
c-geruさんの方法は、入力不可能なダイナミックテキストフィールドであれば、よかったのですが 確かにそうですね。仮に制御可能だとしても入力時に改行されたらどうするか・・・という問題もありますね。10行目で改行されたら、11行目が表示されなくなるというのも問題かと。 Event.ENTER_FRAMEで常に監視して、変化があったら強制的に更新するということもできなくなさそうな気もしますが、ちょっと入力がしにくそうな気がします。 現在の表示は、TextField.scrollVとTextField.bottomScrollVの範囲になるので、TextField.scrollVの値を監視しておいてずれたら強制的に指定値にしてやる・・・という感じでしょうか。 |
flashlite | Åê¹ÆNo.39679 投稿日時: 2008-7-26 4:48 |
常連 居住地: 東京 投稿: 69
使用環境:
WinXP Win7 Flash CS3,Flash CS5.0 FlashPlayer FlashLite 1.1、2.0、2.1、3.1(下記) Docomo SO903i SH-08A SoftBank 911T 922SH 945SHG au W61SA S004 Disney DM001SH Willcom Windows Mobile WX341k |
Re: ユーザによるスクロールを禁止したい 引用:
常に監視ではなく、TextFieldのChangeイベントが発行されたら ということで対応してみました。 行の変化は11行目が発生したら10行目までの文字に削って 11行目にあたる文字は、次のページの頭に挿入という形をとれるので (わかりやすく説明するとOfficeワードみたいなものを作りたい。) 改行の処理はそれほど難しくありません。 むしろ、Delで文字を消したとき、 例えば5文字削除したからといって、次のページの頭の5文字をもってくればOKとはいかない点で困ってます。 (TextFieldでは、自動で行頭・行末禁止処理や英文を1行に表示するので) なので、挑戦・断念しながら 掲題に戻って ユーザによるスクロールを禁止したい のよい方法を探しています。
|
taikiken | Åê¹ÆNo.39682 投稿日時: 2008-7-26 10:23 |
新米 居住地: 福岡 投稿: 11
使用環境:
OSX 10.3,10.4,10.5:MX2004,8,CS3 WinXP:MX2004,8,CS3 |
Re: ユーザによるスクロールを禁止したい スクロールバーのでないテキストフィールドにし、表示させたい行数だけマスクするというのではどうでしょう。
|
flashlite | Åê¹ÆNo.39694 投稿日時: 2008-7-27 5:16 |
常連 居住地: 東京 投稿: 69
使用環境:
WinXP Win7 Flash CS3,Flash CS5.0 FlashPlayer FlashLite 1.1、2.0、2.1、3.1(下記) Docomo SO903i SH-08A SoftBank 911T 922SH 945SHG au W61SA S004 Disney DM001SH Willcom Windows Mobile WX341k |
Re: ユーザによるスクロールを禁止したい 引用:
回答ありがとうございます。 念のため 入力可能なテキストフィールドと UIコンポーネントのTextArea でスクロールポリシーをOFFにして スクロールバーは出さないようにして、 スクロールされてしまう可能性のある行の上に、マウスイベントを持つようなオブジェクトをおいて マスクしてみましたが、テキスト入力内にフォーカスがある場合は、ドラッグで簡単にスクロールしてしまい がんばってマスク作りましたが 残念ながら無力でした。。
|
taikiken | Åê¹ÆNo.39696 投稿日時: 2008-7-27 7:47 |
新米 居住地: 福岡 投稿: 11
使用環境:
OSX 10.3,10.4,10.5:MX2004,8,CS3 WinXP:MX2004,8,CS3 |
Re: ユーザによるスクロールを禁止したい 「入力可能」なを見落としていました、すみません。
テキストフィールドのEvent.CHANGEをリスナーしnumLinesが10を超えたら・・・というような関数で制御できるかと思います。 input_txtインスタンスをステージに置いてます。 5行を超える入力が出来ません。
ご理解しているとは思いますが、作成しようとされているインターフェースは一般的なテキストフィールドに期待されている挙動とは異なります。
|
flashlite | Åê¹ÆNo.39743 投稿日時: 2008-8-1 3:20 |
常連 居住地: 東京 投稿: 69
使用環境:
WinXP Win7 Flash CS3,Flash CS5.0 FlashPlayer FlashLite 1.1、2.0、2.1、3.1(下記) Docomo SO903i SH-08A SoftBank 911T 922SH 945SHG au W61SA S004 Disney DM001SH Willcom Windows Mobile WX341k |
Re: ユーザによるスクロールを禁止したい ありがとうございます。
最初に明記しておくべきだったのですが、 FlashでOffice-WORDのようなページ単位で入力できるものを作っています。 仮に1ページ10行であれば、11行目にあたる部分は次のページの1行目として挿入される べきであり、そういった動作は実現できています。 整理すると ・10行表示させるものに、11行以上のTextFieldを用いると ユーザのドラッグなどでスクロールしてしまう。 そこで ・10行目までだけを切り取って表示させると、ユーザによって1行削除などを行われたときに 次ページにあたる続きの文字があれば、そのページの文末に追加しないといけない。(Wordのような挙動) それが、何文字もってくれば良いかよくわからない というところです。 ユーザがちょっと操作ミス(ドラッグしてしまう)をすると、スクロールによって行がずれてしまうので スクロール自体を禁止できないかと思ったわけです。 引用:
|
あにぃ | Åê¹ÆNo.39746 投稿日時: 2008-8-1 9:58 |
職人 居住地: 北海道 投稿: 250
使用環境:
Flash8 FlashCS3 WinXP FlashLite1.1 / 2.0 |
Re: ユーザによるスクロールを禁止したい 引用:
selectionBeginIndex及びselectionEndIndexを使用すればドラッグ範囲を取得できますので、何文字もってくればいいのかは安易に取得できる気がします。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |