Write a VB program to allow add name and display the registered name list using ArrayList.
The program should allow user to key in the name on the text box and add the name into an ArrayList using the Submit button. You can click the View All button to display all the added name in the second form. Limit a total of 20 name.
STEP 1: Display a MessageBox when the registration is successfully. (<= 20 items). Otherwise, display a message when the registration limit is reached.
STEP 2: Display the second form, and display all the items of the ArrayList in the ListBox.
Click Back button to back to the first form.
Click Remove button to remove the selected item from the ArrayList
Example(first form)
Enter your name:(textbox)
Submit(button) -show register successfully & the registration is closed(messagebox)
ViewAll(button) -Second Form
(Listbox - all the input items
Back(button) -back to first form
Remove(button) - remove the item)
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmMain
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.btnSubmit = New System.Windows.Forms.Button()
Me.Label1 = New System.Windows.Forms.Label()
Me.txtName = New System.Windows.Forms.TextBox()
Me.SuspendLayout()
'
'btnSubmit
'
Me.btnSubmit.Location = New System.Drawing.Point(107, 52)
Me.btnSubmit.Name = "btnSubmit"
Me.btnSubmit.Size = New System.Drawing.Size(100, 23)
Me.btnSubmit.TabIndex = 0
Me.btnSubmit.Text = "Submit"
Me.btnSubmit.UseVisualStyleBackColor = True
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Location = New System.Drawing.Point(14, 29)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(87, 13)
Me.Label1.TabIndex = 1
Me.Label1.Text = "Enter your name:"
'
'txtName
'
Me.txtName.Location = New System.Drawing.Point(107, 26)
Me.txtName.Name = "txtName"
Me.txtName.Size = New System.Drawing.Size(100, 20)
Me.txtName.TabIndex = 2
'
'frmMain
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(232, 94)
Me.Controls.Add(Me.txtName)
Me.Controls.Add(Me.Label1)
Me.Controls.Add(Me.btnSubmit)
Me.Name = "frmMain"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Add Name"
Me.ResumeLayout(False)
Me.PerformLayout()
End Sub
Friend WithEvents btnSubmit As System.Windows.Forms.Button
Friend WithEvents Label1 As System.Windows.Forms.Label
Friend WithEvents txtName As System.Windows.Forms.TextBox
End Class
Public Class frmMain
Public names As New ArrayList()
Private Sub btnSubmit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSubmit.Click
If names.Count < 20 Then
names.Add(txtName.Text)
MessageBox.Show("Register successfully")
Else
MessageBox.Show("The registration is closed")
End If
Dim frmDisplayName As New frmDisplayNames()
frmDisplayName.ShowDialog()
End Sub
End Class
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class frmDisplayNames
Inherits System.Windows.Forms.Form
'Form overrides dispose to clean up the component list.
<System.Diagnostics.DebuggerNonUserCode()> _
Protected Overrides Sub Dispose(ByVal disposing As Boolean)
Try
If disposing AndAlso components IsNot Nothing Then
components.Dispose()
End If
Finally
MyBase.Dispose(disposing)
End Try
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
<System.Diagnostics.DebuggerStepThrough()> _
Private Sub InitializeComponent()
Me.btnViewAll = New System.Windows.Forms.Button()
Me.lstNames = New System.Windows.Forms.ListBox()
Me.btnBack = New System.Windows.Forms.Button()
Me.btnRemove = New System.Windows.Forms.Button()
Me.SuspendLayout()
'
'btnViewAll
'
Me.btnViewAll.Location = New System.Drawing.Point(12, 204)
Me.btnViewAll.Name = "btnViewAll"
Me.btnViewAll.Size = New System.Drawing.Size(75, 23)
Me.btnViewAll.TabIndex = 0
Me.btnViewAll.Text = "View All"
Me.btnViewAll.UseVisualStyleBackColor = True
'
'lstNames
'
Me.lstNames.FormattingEnabled = True
Me.lstNames.Location = New System.Drawing.Point(12, 12)
Me.lstNames.Name = "lstNames"
Me.lstNames.Size = New System.Drawing.Size(237, 186)
Me.lstNames.TabIndex = 1
'
'btnBack
'
Me.btnBack.Location = New System.Drawing.Point(93, 204)
Me.btnBack.Name = "btnBack"
Me.btnBack.Size = New System.Drawing.Size(75, 23)
Me.btnBack.TabIndex = 0
Me.btnBack.Text = "Back"
Me.btnBack.UseVisualStyleBackColor = True
'
'btnRemove
'
Me.btnRemove.Location = New System.Drawing.Point(174, 204)
Me.btnRemove.Name = "btnRemove"
Me.btnRemove.Size = New System.Drawing.Size(75, 23)
Me.btnRemove.TabIndex = 0
Me.btnRemove.Text = "Remove"
Me.btnRemove.UseVisualStyleBackColor = True
'
'frmDisplayNames
'
Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
Me.ClientSize = New System.Drawing.Size(257, 241)
Me.Controls.Add(Me.lstNames)
Me.Controls.Add(Me.btnRemove)
Me.Controls.Add(Me.btnBack)
Me.Controls.Add(Me.btnViewAll)
Me.Name = "frmDisplayNames"
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "Display Names"
Me.ResumeLayout(False)
End Sub
Friend WithEvents btnViewAll As System.Windows.Forms.Button
Friend WithEvents lstNames As System.Windows.Forms.ListBox
Friend WithEvents btnBack As System.Windows.Forms.Button
Friend WithEvents btnRemove As System.Windows.Forms.Button
End Class
Public Class frmDisplayNames
Private Sub btnViewAll_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnViewAll.Click
lstNames.Items.Clear()
For i As Integer = 0 To frmMain.names.Count - 1
lstNames.Items.Add(frmMain.names(i))
Next
End Sub
Private Sub btnBack_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBack.Click
Me.Close()
End Sub
Private Sub btnRemove_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRemove.Click
If lstNames.SelectedIndex <> -1 Then
frmMain.names.RemoveAt(lstNames.SelectedIndex)
btnViewAll_Click(sender, e)
MessageBox.Show("Name has been deleted")
End If
End Sub
End Class
Comments
Leave a comment