Bahasa Inggris secara bertahap menjadi bahasa global, dan antusiasme masyarakat modern untuk belajar bahasa Inggris semakin meningkat. Oleh karena itu, repeater bahasa Inggris sangat populer. Namun, tidak peduli seberapa kuat repeaternya, ada kelemahan yang jelas - waktu pengulangan yang tetap. Jika waktu membaca ulang terlalu singkat, maka tidak ada yang dapat Anda lakukan ketika menemukan kalimat yang panjang; jika waktu membaca ulang sangat lama, Anda pasti harus membaca ulang beberapa bagian yang berlebihan dan mempercepatnya (saat ini, beberapa mesin membaca ulang berdurasi 200 detik memilikinya). fungsi maju cepat) ), yang sama merepotkannya dengan meneruskan rekaman dengan cepat! Oleh karena itu, penulis ingin menggunakan kontrol pemutaran media Delphi yang kuat untuk mengembangkan perangkat lunak repeater. Keuntungan terbesar dari perangkat lunak repeater adalah Anda dapat mengulanginya dengan bebas berapa pun panjang kalimatnya! Sama sekali tidak perlu memundurkan atau mempercepat. Tidak hanya itu, software repeater juga memiliki fungsi pembacaan acak yang sulit dicapai dengan repeater biasa.
Persiapan
Kontrol pemutaran media Delphi dapat memutar berbagai file suara. Kita dapat mencatat materi pembelajaran ke dalam komputer sesuai dengan keinginan kita dan menyimpannya dalam format yang sesuai. Umumnya dapat disimpan sebagai file wave atau file mp3.
Pengembangan pengulang
Perangkat lunak repeater yang dikembangkan terutama menggunakan kontrol pemutaran media Delphi, TMediaplayer. Kontrol ini ada di halaman kontrol sistem (sistem).
Pertama buat aplikasi. Atur BorderStyle formulir utama ke BsDialog untuk menonaktifkan pembesaran dan pengecilan formulir. Atur KeyPReview ke True agar formulir utama dapat menangani kejadian keyboard.
Tempatkan kontrol pada formulir utama:
di dalam:
Pemutar media adalah kontrol utama program dan digunakan untuk memutar suara.
TrackBar digunakan untuk menunjukkan kemajuan pemutaran saat ini.
TlistBox (SectionList) sebelah kiri digunakan untuk menyimpan nama file suara yang akan diputar (materi pembelajaran).
Dua TlistBox (StartList, StopList) di sebelah kanan digunakan untuk merekam kalimat yang diulang.
Tombol 'Tambah' dan 'Hapus' digunakan untuk memelihara materi pembelajaran.
TrackBar1 digunakan untuk menampilkan proses pemutaran.
Timer1 digunakan untuk menampilkan kemajuan pemutaran secara dinamis.
OpenDialog1 digunakan untuk memilih file yang akan diputar.
Implementasi fungsi pengulangan:
① Tetapkan dua bilangan bulat (StartPos, SstopPos) dalam program untuk mencatat titik awal dan akhir pemutaran, dan atur StopPos ke -1 selama inisialisasi.
② Catat nilai awal setiap kali diputar: StartPos := Mediaplayer1.Position;
③ Dalam program ini, gunakan spasi untuk mengontrol pengulangan dan tombol Enter untuk melanjutkan pemutaran. Pertama, atur KeyPreview formulir utama ke True sehingga formulir utama dapat mencegat pesan-pesan penting. Lalu, bebankan metode OnKeyDown. Kodenya adalah sebagai berikut:
Implementasi fungsi membaca gratis:
Karena titik awal dan akhir dari semua kalimat yang diulang dicatat selama pembacaan ulang, kalimat apa pun dapat dibaca ulang. Saat pengguna mengklik dua kali baris di 'Tahun-Tahun Terakhir' dengan mouse, pengguna dapat langsung beralih ke pemutaran kalimat tersebut. Kodenya adalah sebagai berikut:
prosedur TRepeaterForm.ListDblClick(Pengirim: TObject);
mulai
SID := (Pengirim sebagai TListBox).ItemIndex; //Dapatkan indeks baris saat ini
SID StopList.ItemIndex := SID; //Setel daftar titik akhir ke
SID StartList.ItemIndex := SID; //Atur daftar awal ke
SID StartPos := StrToInt(StartList.Items[SID]);//Dapatkan posisi awal
StopPos := StrToInt(StopList.Items[SID]);//Dapatkan posisi akhir
Mediaplayer1.Stop; //Hentikan pemutaran saat ini
Mediaplayer1.StartPos := StartPos; //Tetapkan rentang pemutaran baru
Mediaplayer1.EndPos := StopPos;
Mediaplayer1.Play; //Putar suara dalam rentang yang ditentukan
akhir;
Penambahan materi pembelajaran:
Klik tombol Tambah untuk menambahkan materi pembelajaran. Perlu dicatat bahwa daftar asli harus diambil sebelum menambahkan file baru untuk mencegah duplikasi. Kodenya adalah sebagai berikut:
procedure TRepeaterForm.AddBtnClick(Pengirim: TObject);
var fn: tali;
mulai
jika OpenDialog1.Jalankan lalu
mulai
fn := OpenDialog1.Nama File;
if SectionList.Items.IndexOf(fn)<0 lalu //Ambil file terlebih dahulu, jika tidak ada SectionList.Items.Add(fn);
akhir;
akhir;
Pemilihan bahan pelajaran:
Dicapai dengan membebani metode OnClick secara berlebihan. Pertama dapatkan indeks saat diklik, lalu dapatkan nama file melalui Items [index]. Tetapkan nama file ke properti Nama File Mediaplayer, lalu panggil metode Buka. (kode dihilangkan)
Selain itu, file materi pembelajaran harus dibuka saat program diinisialisasi; materi pembelajaran harus disimpan saat program keluar. Fungsi-fungsi ini diimplementasikan melalui TlistBox.Items.LoadFromFile dan TlistBox.Items.SaveToFile (kode dihilangkan).
Program ini lolos debugging di lingkungan Windows98+Delphi5.0 Cina. Semua kode sumber dapat diperoleh melalui surat kepada penulis.