单击输入按钮创建一个新的文本框

本文关键字:一个 文本 按钮 输入 创建 单击 | 更新日期: 2023-09-27 18:28:30

如何通过单击输入按钮创建新的TextBox?如何将光标集中在新文本框上(每次创建新文本框时,光标都集中在最后一个文本框上)?

我已经尝试过这个代码:

"private void textBox1_TextChanged(object sender, EventArgs e)
        {
            textBox1.Enter += new EventHandler(textBox1_Enter);
        }
        private void textBox1_Enter(object sender, EventArgs e)
        {
            TextBox tb = new TextBox();
            tb.Size = new Size(100, 50);
            tb.Location = new Point(100, 100);
            Controls.Add(tb);
        }"

但当我按下输入按钮

单击输入按钮创建一个新的文本框

时,它不会创建新的文本框

加载表单时:

this.KeyDown += new KeyEventHandler(Form1_KeyDown);

然后

void Form1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Key == Key.Return)
    {
        TextBox textbox = new TextBox();
        this.Controls.Add(textbox);
        textbox.Focus(); 
    }
}

从本质上讲,创建在按键时触发的事件。如果密钥是返回密钥,则创建文本框。

您的示例代码实际上没有意义,因为当您希望从表单中激发事件时,您正在从文本框中激发事件。

        TextBox myTextBox=new TextBox();

        myTextBox.Visible=true;

        myTextBox.Left=100;
        myTextBox.Top=200;
        myTextBox.Text="ABC";
                    this.Controls.Add(myTextBox);

关于移动光标:

        this.Cursor = new Cursor(Cursor.Current.Handle);
        Cursor.Position = new   Point(this.Left+myTextBox.Left+50,this.Top+myTextBox.Top+50);