Saya mencoba membuat permainan matematika, di Adobe Animate, di mana ada pertanyaan dan pengguna mengetikkan jawabannya ke bilah input teks.

Saya telah membuat tombol kirim, dan menambahkan pendengar acara, namun, saya tidak yakin bagaimana membandingkan teks input, dan hasilnya, menggunakan pernyataan If.

Saya telah menamai input teks saya "myname" dan sejauh ini kode saya:

this.submit.addEventListener("click", check);
function check()
{}

Bagaimana cara mendapatkan teks input dan membandingkannya dengan jawabannya?

0
Hamza 17 Desember 2017, 00:05

1 menjawab

Jawaban Terbaik

Coba gunakan operator Kesetaraan == untuk memeriksa apakah keduanya sama (sama)...

function check()
{
    if (myname.text == "your result text")
    {
        trace("user input (myname) is matching...");
    }

}

Tentang...

"Maaf, tapi sepertinya ini tidak berhasil, ini tidak menunjukkan kesalahan apa pun, hanya saja tidak menunjukkan hasil atau pencetakan."

Saya ingin tahu apakah baris ini menyebabkan masalah:

this.submit.addEventListener("click", check);

Jika Anda memiliki objek Sprite atau MovieClip yang disebut (nama instance) "kirim" maka atur kode seperti ini:

submit.buttonMode = true;
submit.addEventListener(MouseEvent.CLICK, check);

Kemudian beri tahu kompiler bahwa function check seharusnya menangani kejadian mouse.

function check (evt:MouseEvent)
{
    if (myname.text == "your result text")
    {
        trace("user input (myname) is matching...");
    }

}

PS: Saya pribadi tidak menggunakan this. di depan nama variabel, tetapi mungkin pengaturan program Anda berarti Anda tidak punya pilihan. Dalam kasus seperti itu, coba gunakan this.submit.addEvent... dan this.myname.text ==... ketika mencoba membuatnya bekerja.

1
VC.One 17 Desember 2017, 18:31