メイン 迷える子羊の部屋【初心者専用】
パラメータの型変換 | 投稿するにはまず登録を |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
| 投稿者 | スレッド |
|---|---|
| PENGPENG8 | Åê¹ÆNo.45557 投稿日時: 2010-8-23 18:02 |
半人前 ![]() ![]() 居住地: 愛知県 投稿: 49
使用環境:
Windows7Pro、FlashCS5Professional |
パラメータの型変換 はじめまして、非常に基本的なことなのですが、いきずまっており教えていただきたくよろしくおねがいします。
BetweenAS3のイージングの種類ごとの動きをすぐに確認できるように 11種のイージングタイプを示す文字列を含むcomboBoxをおいて、 項目を選択すると該当のトゥーインを実行するようにしようとしています。 (Linear, Quad, Cubic, Quart, Quint, Sine, Expo, Circ, Back, Bounce, Elastic) 問題は以下のコードのようにイージングのタイプを示す文字列の変数を 直接BetweenAS3.tween()にいれればエラーになります。 1067: 型 String の値が、関連しない型 org.libspark.betweenas3.core.easing:IEasing に暗黙で型変換されています。 String型をこのエラー文の「IEasing」という型の変数にするのかと思い 「IEasing」型の変数を宣言だけしてみましたが不明な型ですとエラーになってしまいます。 どのように型の変換をすればいいでしょうか? イージングの種類と処理の種類の組み合わせをswitch文にするのも現実的ではないですし・・・ |
| ひろゆき | Åê¹ÆNo.45558 投稿日時: 2010-8-23 19:40 |
ちょんまげら ![]() ![]() 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CCSafari 6.1 |
Re: パラメータの型変換
|
| PENGPENG8 | Åê¹ÆNo.45559 投稿日時: 2010-8-23 19:52 |
半人前 ![]() ![]() 居住地: 愛知県 投稿: 49
使用環境:
Windows7Pro、FlashCS5Professional |
Re: パラメータの型変換 ひろゆき様
さっそくありがとうございます。ズバリそのことで困っておりました。 各イージングクラスの.asファイルのコンストラクタをみても、どう生成していいのかわかず この:IEasingについても、不明でしたがこのようにパラメータのオブジェクトを作るのですね。 そのてんについては構成ファイルをもっとじっくりみていきたいとおもいます。 とくにこのIEasingについて。ありがとうございました。 |
| PENGPENG8 | Åê¹ÆNo.45562 投稿日時: 2010-8-24 1:04 |
半人前 ![]() ![]() 居住地: 愛知県 投稿: 49
使用環境:
Windows7Pro、FlashCS5Professional |
Re: パラメータの型変換 ひろゆき様
一度は下のように、わかったつもりだったのですが詳細につめて製作していくと 不明な点が出て来てしまいまたおしえていただきたいのですが、よろしくお願いいたします。 IEasingの定義をimportした上で以下のように書き換えコンボボックスを選択すると easingType = Class()のところでエラーメッセージ例として 「"Quad"をClass型に強制変換できない」となります。 なお、このコンボボックスはオーサリング時にステージ配置し dataProviderも各イージング名をlabelとdataにコピペしたものです。 文字列としてはイージングもメソッドの両方、取れていることは確認しています。 参考に示していただいた「BetweenAS3のイージング」と同様と考えていたのですが、 どういったことが原因でClass型に変換できないとなるのでしょうか。 示していただいたサンプルではカスタムメニューのItemのvalueという形ですが comboBoxのdataと違いは無いと考えていましたが・・・ comboBoxのdataは単にStringなのですがそれがマズイでしょうか? そこで、まずは示していただいた例題でで確認しようと、 お教えいただきましたサイトのコードのままにやってみました。 ところがこちらではMain.asのリスト選択イベントハンドラの引数が 定義されていないとエラーになりどうにも先に行けませんでした。 private function select1(evt:CompoEvent):void {・・・} もちろんCompoEvent.asも同階層においてあります。 何か根本的なところに間違いをしているのではと各クラスの定義ファイルや そのimportなど確認したのですが問題は無いように思えました。 このサイトのサンプルの動作もまだ確認できていないのですが 質問の内容としましては、なぜeasingTypeのClass()の引数として与えた「item.value」がOKで 以下のようなコンボボックスの選択項目のdataではダメなのかという点にあります。 よろしくお願いいたします。 |
| ひろゆき | Åê¹ÆNo.45563 投稿日時: 2010-8-24 10:13 |
ちょんまげら ![]() ![]() 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CCSafari 6.1 |
Re: パラメータの型変換 まず、スクリプトを提示されるなら、第三者が再現できるよう、省略などしないで提示してください。
でなければ、どこに問題が潜んでいるのか、推測しなければならない場合もでてきてしまい、 回答者に余計な手間をかけさせることにもなりかねません。 次に、Class(item.value)でエラーが出ないのは、 item.valueが文字列(String)ではなく、クラス(Class)だからです。 プロパティのところにあるように
|
| ひろゆき | Åê¹ÆNo.45564 投稿日時: 2010-8-24 11:11 |
ちょんまげら ![]() ![]() 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CCSafari 6.1 |
Re: パラメータの型変換
|
| PENGPENG8 | Åê¹ÆNo.45565 投稿日時: 2010-8-24 12:13 |
半人前 ![]() ![]() 居住地: 愛知県 投稿: 49
使用環境:
Windows7Pro、FlashCS5Professional |
Re: パラメータの型変換 ひろゆき様
レスありがとうございます。質問作法が不味く申し訳ありません。 要点だけを書くべきかと略してしまいましたが逆に手間を取らせてしまい今後、気をつけます。 ご助言のおかげでやっと下記のコードで目的のものが作成できました。 やはりIEasingクラスのインスタンス生成方法を教えていただいたことで方向性が見えました。 ただマズかったのは、Class()の引数がString型でもいいと考えていた点です。 それがあったためオーサリング時にステージに配置したコンボボックスのdataProviderのdataも 全部String型で入力していました。その後、型変換ができないエラーが出たのですが、 クラス名としての各イージングをdataに登録するが分からす迷ってしまっていました。 (そのオーサリング時から登録する方法も今後、調べていこうと思っています) やっと解決できました。ありがとうございます。 |
| スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
| 投稿するにはまず登録を | |



ログイン




10.8.5
Flash Professional CS4/CS6/CC
