我已經創建了一個winform應用程序,其中,點擊按鈕,將生成文本框。現在我必須爲這些文本框添加語音。例如,如果文本框的文本是'hello',則會有演講'hello'。如何在winforms中爲動態生成的文本框添加語音c#
到目前爲止,我已經嘗試過。 :
private void btnAdd_Click(object sender, EventArgs e)
{
TextBox textbox = new TextBox();
int count = panel1.Controls.OfType<TextBox>().ToList().Count;
textbox.Location = new System.Drawing.Point(60, 25 * count);
textbox.Size = new System.Drawing.Size(220, 20);
textbox.Multiline = true;
textbox.Name = "textbox_" + (count + 1);
//textbox.TextChanged += new System.EventHandler(this.TextBox_Changed);
panel1.Controls.Add(textbox);
}
private void Form1_Load(object sender, EventArgs e)
{
SpVoice vc = new SpVoice();
vc.Speak(textbox1.Text, SpeechVoiceSpeakFlags.SVSFDefault);
}
我使用speechLib庫講話。在簡單的情況下工作正常。
但是,當動態創建文本框時,我無法訪問其ID或名稱。
如果添加的文本框是在相同的形式,其中按鈕是本目前尚不清楚。如果是這種情況,那麼在表單加載事件中不可能使用不存在的文本框。你能澄清這一點嗎? – Steve
是的。文本框和按鈕的形式相同@Steve –
但是,在form_load事件中TextBox不存在。你不能使用它。也許你需要一個不同的按鈕來執行當前在Form_Load事件 – Steve