0

TextInput オブジェクトを追加したい画面があります。これにより、プレイヤーはハイスコアに自分の名前を入力できます。

これどうやってするの?ツールを使用して TextInput を追加する方法について読んだことがTありますが、入力キーで HighscoreScreen.as コードにその値またはイベントにアクセスするにはどうすればよいですか?

プログラムで TextInput を追加できませんか? TextInputフラッシュで知られていないか、何か不足していますか?

4

1 に答える 1

1

実際、このTツールを使用して入力テキスト フィールドを描画することができます。フィールド タイプをInput Textおよび に設定して、インスタンス名を割り当ててください (例: txtName)。次に、コードで、次のようにフィールドにアクセスできます。

import flash.text.*;
import flash.display.*;
...

// Code class for the score screen.
public class ScoreScreen
{
    private var m_mcScreen:MovieClip = null;
    private var m_txtName:TextField = null;
    ...

    public function ScoreScreen ( mcScreen:MovieClip )
    {
        m_mcScreen = mcScreen;

        InitName ();
    }

    public function InitName ():void
    {
        // This assumes that m_mcScreen has a direct child named 'txtName'
        // If the text field is more deeply nested, you need to navigate
        // through the entire hierarchy of display objects until you
        // reach the text field.
        m_txtName = mcScreen.getChildByName ( "txtName" ) as TextField;
        m_txtName.text = "Default text";
    }
}

私は Flash ゲームでこのコードを使用しました。私のセットアップでは、ゲームの各主要画面に専用のムービー クリップがあり、それぞれにその画面全体のロジックを実装するクラスがあります。(.fla ファイルにはコードがまったくありません。これは、チームでの作業に大いに役立ちます。)

注意してください、私は実際にこのコードをコンパイルしていません。インポートの欠落や軽微なバグがある可能性があります。

于 2013-06-17T19:12:38.673 に答える