📄 ch17.htm
字号:
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">1440</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">11</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">720</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Value</font></tt> </td>
<td WIDTH="143">-1 'True</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">1095</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.OptionButton</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">optType</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Caption</font></tt> </td>
<td WIDTH="143">"Spreadsheet"</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">255</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Index</font></tt> </td>
<td WIDTH="143">4</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">1440</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">10</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">480</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">1215</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.OptionButton</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">optType</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Caption</font></tt> </td>
<td WIDTH="143">"Reading"</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">255</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Index</font></tt> </td>
<td WIDTH="143">3</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">1440</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">9</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">975</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.OptionButton</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">optType</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Caption</font></tt> </td>
<td WIDTH="143">"Question"</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">255</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Index</font></tt> </td>
<td WIDTH="143">2</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">8</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">720</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">1095</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.OptionButton</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">optType</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Caption</font></tt> </td>
<td WIDTH="143">"&Numbers"</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">255</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Index</font></tt> </td>
<td WIDTH="143">1</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">7</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">480</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">1095</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.OptionButton</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">optType</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Caption</font></tt> </td>
<td WIDTH="143">"Command"</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">255</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Index</font></tt> </td>
<td WIDTH="143">0</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">6</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">1095</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.TextBox</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">txtSpeak</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">1575</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">3120</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">MultiLine</font></tt> </td>
<td WIDTH="143">-1 'True</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">ScrollBars</font></tt> </td>
<td WIDTH="143">2 'Vertical</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">4</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">3975</td>
</tr>
<tr>
<td WIDTH="176"><tt><font FACE="Courier">VB.CommandButton</font></tt> </td>
<td WIDTH="118"><tt><font FACE="Courier">Name</font></tt></td>
<td WIDTH="143">cmdSpeak</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Caption</font></tt> </td>
<td WIDTH="143">"&Speak"</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Height</font></tt> </td>
<td WIDTH="143">495</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Left</font></tt> </td>
<td WIDTH="143">1680</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">TabIndex</font></tt> </td>
<td WIDTH="143">3</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Top</font></tt> </td>
<td WIDTH="143">240</td>
</tr>
<tr>
<td WIDTH="176"> </td>
<td WIDTH="118"><tt><font FACE="Courier">Width</font></tt> </td>
<td WIDTH="143">1215</td>
</tr>
</table>
</center></div>
<p>Note that the option buttons are built as members of control arrays. You'll use this
array when you add the code behind the <tt><font FACE="Courier">Speak</font></tt> command
button. Now add the code from Listing 17.4 to the <tt><font FACE="Courier">cmdSpeak_Click</font></tt>
event. </p>
<hr>
<blockquote>
<b><p>Listing 17.4. Adding code to the <tt><font FACE="Courier">cmdSpeak_Click</font></tt>
event.<br>
</b></p>
</blockquote>
<blockquote>
<tt><font FACE="Courier"><p>Private Sub cmdSpeak_Click()<br>
'<br>
' get text and play it back<br>
'<br>
Dim iType As Integer ' statement type <br>
Dim iPriority As Integer ' queue priority <br>
Dim cText As String ' text to speak<br>
'<br>
' read statement type selection<br>
iType = IIf(optType(0), vtxtst_COMMAND, iType)<br>
iType = IIf(optType(1), vtxtst_NUMBERS, iType)<br>
iType = IIf(optType(2), vtxtst_QUESTION, iType)<br>
iType = IIf(optType(3), vtxtst_READING, iType)<br>
iType = IIf(optType(4), vtxtst_SPREADSHEET, iType)<br>
iType = IIf(optType(5), vtxtst_STATEMENT, iType)<br>
iType = IIf(optType(6), vtxtst_WARNING, iType)<br>
'<br>
' get priority value<br>
iPriority = IIf(OptPriority(0), vtxtsp_NORMAL, iPriority)<br>
iPriority = IIf(OptPriority(1), vtxtsp_HIGH, iPriority)<br>
iPriority = IIf(OptPriority(2), vtxtsp_VERYHIGH, iPriority)<br>
'<br>
' get text to speak<br>
cText = txtSpeak.Text<br>
'<br>
objVText.Speak cText, iType + iPriority <br>
'<br>
End Sub</font></tt> </p>
</blockquote>
<hr>
<p>This is the minimal set of commands needed to implement speech services. You can
provide speech services by simply registering your application, enabling the engine, and
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -