乘法表练习工具






4.33/5 (6投票s)
一个适合儿童练习乘法表的程序;是将 Windows Media Player 控件嵌入应用程序的一个很好的例子。
引言
我有两个学龄儿童,他们都在学习和/或练习乘法表。我编写了这个程序来帮助他们以一种有趣的方式练习乘法表,并根据需要专注于特定的表。为了让它更有趣,我希望它在后台播放音乐,并根据正确或错误的回答提供良好的 A/V 反馈。我发现了很多可以做到这一点的应用程序,但通常,它们是需要购买的或基于 Web 的应用程序。我想要一些可定制的,并且可以本地运行,而无需担心浏览器或互联网连接。我还希望有一个应用程序可以在练习时轻松地从数字小键盘运行——这些尤其重要,因为目标受众是年幼的孩子。
背景
我从未尝试在应用程序中加入背景音乐,所以我尝试了几种选择。最后,我选择了将 Windows Media Player 控件嵌入到应用程序中(请参阅下面的 嵌入 Windows Media Player 部分以了解如何操作)。它很灵活,并且原生支持各种音乐格式。
使用 Windows Media Player 控件
Windows Media Player 控件的实际文档可以在 MSDN 上找到。我将重点介绍我在这个简单应用程序中需要的属性。
媒体播放器控件有一个 settings
属性,允许访问几个播放属性(例如,自动启动、播放次数和音量)。以下代码显示了如何应用这些属性
' We just use Windows Media Player to play background music
With MediaPlayer
With .settings
.autoStart = False
.playCount = Integer.MaxValue
.volume = 10
End With
.URL = Application.StartupPath & "\Audio\BackgroundJam.wma"
End With
请注意,我只是将播放计数设置为最大整数值,以有效地为音乐创建一个无限播放循环。音量设置为 10,对于背景音乐来说很不错并且足够低 - 但又不会太分散注意力。
要播放和暂停音乐,您可以按如下方式访问 Ctlcontrols
属性
Private Sub StartBackgroundMusic()
If m_backgroundMusicEnabled Then
With MediaPlayer.Ctlcontrols
.currentPosition = 0
.play()
End With
End If
End Sub
Private Sub StopBackgroundMusic()
MediaPlayer.Ctlcontrols.stop()
End Sub
嵌入 Windows Media Player
要将 Windows Media Player 控件嵌入到您自己的应用程序中,您必须从 Visual Studio 工具箱(当窗体处于设计模式时可见)单击“选择项”,然后选择“COM 组件”选项卡——请耐心等待,这可能需要一段时间才能加载。如果您的系统上安装了 Windows Media Player,则应该有一个标记为“Windows Media Player”的 COM 组件,其路径类似于 C:\Windows\system32\wmp.dll;选中此项,然后单击“确定”。如果您只想要应用程序中的音乐(即,不是视频),请确保将控件的 Visible
属性设置为 False
。
关注点
源代码中提供了一个类(ConfigurationSettings.vb),它简化了从本地配置文件保存和检索设置的用法。它会自动将设置转换为 Boolean
和 Integer
值,反之亦然;以下是其用法示例
Private Sub PracticeTool_FormClosing(ByVal sender As Object, ByVal e As _
System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
m_countDownTimer.Enabled = False
BooleanSetting("RandomTestOrder") = m_randomTestOrder
BooleanSetting("IncludeZeroInRange") = m_includeZeroInRange
BooleanSetting("AudioFeedbackEnabled") = m_audioFeedbackEnabled
BooleanSetting("BackgroundMusicEnabled") = m_backgroundMusicEnabled
BooleanSetting("BackgroundMusicAlwaysOn") = m_backgroundMusicAlwaysOn
IntegerSetting("CorrectAnswerDelay") = m_correctAnswerDelay
IntegerSetting("IncorrectAnswerDelay") = m_incorrectAnswerDelay
IntegerSetting("CountDownTime") = m_countDownTime
BooleanSetting("WrongAnswerOnTimeout") = m_wrongAnswerOnTimeout
Setting("PracticeNumbers") = Numbers.Text
Setting("PracticeRange") = Range.Text
Setting("ChildsName") = m_childsName
SaveSettings()
End Sub
一般来说,对于任何刚开始使用 VB.NET 的人来说,此应用程序应该是一个很好的例子。
使用应用程序
假设您实际上来到了这个页面,只是为了简单地将这个程序用于您自己的孩子,不用担心——使用方法应该足够简单。您所需要做的就是将二进制文件部署到它们自己的文件夹中并运行可执行文件。注意工具提示以获得帮助,并根据需要调整选项。同样,该应用程序在内部使用 Windows Media Player 控件,因此安装 Windows Media Player 是先决条件。有几个选项可以根据个别孩子的需求定制用法
此外,程序使用的音频可以在 "Audio" 文件夹中轻松更改,以更好地适应您孩子的兴趣 - 这包括一个 "background jam" 来保持趣味性。只需使用您喜欢的音频文件覆盖现有文件,只需确保使用相同的文件名即可。