版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
上一篇谈到了使用InputBox输入对话框 同用户交互。
这一篇文章谈谈如何建立自己的输入对话框。
增加一个窗体:

其中:
Form2属性:
ControlBox=False ,不显示图标以及最大化、最小化、关闭按钮
FormBorderStyle=FixedSingle ,使窗口不可拉伸
ShowInTaskbar=False ,不在任务栏显示
StartPosition=CenterScreen,显示在屏幕中央,当然你也可以自己设置位置
txtInfo 文本框属性:
Multiline=True ,多行显示
ReadOnly=True ,只读,不可更改内容
TabIndex=False,按下Tab不会将焦点切换到此文本框
主要代码如下:
Public Class Form2
Public resultValue As String ‘公有变量,保存用户输入的内容
Public Sub New(ByVal title As String, ByVal info As String) ‘传递值到窗口,请参看《vb.net 教程 3-2 窗体编程之窗体 4》
' 此调用是设计器所必需的。
InitializeComponent()
' 在 InitializeComponent() 调用之后添加任何初始化。
Me.Text = title
txtInfo.Text = info
End Sub
Private Sub btnOk_Click(sender As Object, e As EventArgs) Handles btnOk.Click
If txtResult.Text.Trim = "" Then ’一个简单的检查,请根据实际需要进行检查用户输入内容是否符合要求。
MessageBox.Show("没有输入内容")
Exit Sub
End If
resultValue = txtResult.Text
Me.DialogResult = DialogResult.OK ’窗口返回结果
End Sub
Private Sub btnCancel_Click(sender As Object, e As EventArgs) Handles btnCancel.Click
Me.DialogResult = DialogResult.Cancel ‘窗口返回结果
End Sub
Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
txtResult.Focus() ’使txtResult获得输入焦点
End Sub
End Class
Form1中调用的代码:
Dim dialogForm As Form2
dialogForm = New Form2("请输入信息", "请在以下文本框内输入信息")
If dialogForm.ShowDialog() = DialogResult.OK Then
MessageBox.Show("输入的信息是:" & dialogForm.resultValue)
Else
MessageBox.Show("您取消了输入")
End If
dialogForm.Dispose()
看看效果:

form1上按下“自定义输入对话框”,弹出Form2的窗口,然后输入123456,按下“确定”:

如果按下的是 “取消”:

学习更多vb.net知识,请参看 vb.net 教程 目录
本文介绍如何在VB.NET中创建自定义输入对话框,包括窗体设置、文本框属性配置及主要代码实现。通过实例展示了如何进行用户输入验证,并提供了完整的示例代码。

5677

被折叠的 条评论
为什么被折叠?



