Total Pageviews

Showing posts with label ListBox control. Show all posts
Showing posts with label ListBox control. Show all posts

Saturday, November 12, 2016

How to make a simple To Do List Software in Visual Basic 2015

To make a simple To Do List in Visual Basic 2015 I will use a listbox and several buttons and one textbox.

1. Start a new Visual Basic 2015 project! This apply for the older .net versions.
Start a new project
Start a new project

2. Create the form and set it up!

Create a new Visual Basic 2015 form

Now let set the properties of the form.
In the form properties change the sizes, width = 500 and height = 500.
Form properties


Change in Properties the title of the form as "Simple To Do List".
Form title

3. StatusStrip Control Setting Up. In the StatusStrip create a label where we will present how many tasks we have to do in the moment.
StatusStrip
We create a lable within the StatusStrip as it's shown on the above picture. Default property name for the created label is ToolStripStatusLabel1. This is not practical to work with so we will change it to lblTasksCount.
ToolStripStatusLabel Control
We have the following view.
ToolStripStatusLabel
You can see that the label text of our ToolStripStatusLabel is ToolStripStatusLabel1. We will delete this text.
ToolStripText Label

4. ToolStrip Control Setting Up.
Let create our first button and our first textbox withing the ToolStrip Control.
ToolStrip Setting Up

Now we will name the button and textbox. 
ToolStripButton1 Name = btnAddTask (coded version)
ToolStripButton1 Name visual version
ToolStripButton1.Text = "Add Task"

The same way we change Text Property to "Add Task"

We will also add an icon to the button property. We do this when we go with the mouse pointer over the button control and perform right click on the mouse and click "Set Image". 
See the photo bellow:
icon

When it comes to downloading icons I always use Iconfinder.com. You can find wonderful premium and free icons there.
ToolStripButton1 Icon inserted

Right from the button is the textbox.
Change the property name from ToolStripTextBox1 to txtAddTask. Use the same way as for ToolStripButton.
Let's change the font and the size of ToolStripTextBox1.
TooStripTextBox Font


Set the font to 16pt.

Change ToolStripTextBox1 size!
ToolStripTextBox1 Size

For our project we will change only Width to 200.

Let's add the other buttons! From designing perspective we will add Separator at first.
ToolStrip Separator

Add the buttons following to look like the image bellow!
Simple To Do List
Simple To Do List
Use the previous explained ways to set the following properties for each of the controls.
- Button2.Name = btnEdit
- Button3.Name = btnRemove
- Button4.Name = btnOpenTaskList
- Button5.Name = btnSaveTaskList

5. Start codding the software!
First change the font of the Task List to 16. Same ways as for the previous controls.

Because in ToolStripTextBox have no Focus (not as the old way), we will write a special code when the form load.

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Me.ActiveControl = txtAddTask.Control
    End Sub


With this code the cursor will be focused in the textbox so we can start writing the task immediately.

    Private Sub btnAddTask_Click(sender As Object, e As EventArgs) Handles btnAddTask.Click
        'Check if txtAddTaskBox is Null or Empty to avoid adding empty task
        If String.IsNullOrEmpty(txtAddTask.Text) Then
            MsgBox("Write your task before adding it to the Task List", vbCritical, "Empty TaskBox")
        Else
            'Add task in the Task List
            ListBox1.Items.Add(txtAddTask.Text.ToString)
            'Clear the task textbox
            txtAddTask.Clear()
            'Focus the task textbox
            txtAddTask.Focus()
            'Count Due Tasks in the Task List
            lblTaskCount.Text = "Due Tasks: " & ListBox1.Items.Count
        End If

    End Sub

You can try to add some tasks now!
Simple Task List in action
Simple Task List in action

Let enter the code in btnEditTask!

    Private Sub btnEdit_Click(sender As Object, e As EventArgs) Handles btnEdit.Click
        Dim selecteditemindex As Integer = ListBox1.Items.IndexOf(ListBox1.SelectedItem)
        Dim editaskinput As String
        Dim Item As Object = ListBox1.Items.Item(selecteditemindex)
        Dim index As Integer = ListBox1.Items.IndexOf(Item)
        editaskinput = InputBox("Edit the Task", "Edit selected Task")
        ListBox1.Items.Remove(ListBox1.SelectedItem)
        ListBox1.Items.Insert(index, editaskinput)

    End Sub

    Private Sub btnRemove_Click(sender As Object, e As EventArgs) Handles btnRemove.Click
        Dim itemfordeletion
        itemfordeletion = ListBox1.SelectedItem
        ListBox1.Items.Remove(itemfordeletion)

    End Sub

Edit and Remove selected tasks from the List Task is programmed. 

Now we will add the codes for Open Task List and Save Task List.



    btnOpenTaskList.Click
        Dim OpenFileDialog1 As New OpenFileDialog
        OpenFileDialog1.FileName = ""
        OpenFileDialog1.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"
        If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
            Dim lines = File.ReadAllLines(OpenFileDialog1.FileName)
            ListBox1.Items.Clear()
            ListBox1.Items.AddRange(lines)
        End If
    End Sub
    Private Sub btnSaveTaskList_Click(sender As Object, e As EventArgs) Handles btnSaveTaskList.Click
        Dim SaveFileDialog1 As New SaveFileDialog
        SaveFileDialog1.FileName = ""
        SaveFileDialog1.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"
        If SaveFileDialog1.ShowDialog() = DialogResult.OK Then
            Dim sb As New System.Text.StringBuilder()
            For Each o As Object In ListBox1.Items
                sb.AppendLine(o)
            Next
            System.IO.File.WriteAllText(SaveFileDialog1.FileName, sb.ToString())
        End If

    End Sub

Our "Simple To Do List Software" is finished. In my next post I will add advanced options to the software so we can make it complete To Do List Software.

Some of the source codes I used are taking from one of my previous posts "ListBox Complete Tutorial - Visual Basic 2015".

Thursday, November 10, 2016

Limit the number of items to add in a ListBox in Visual Basic 2015

In this blog post you will learn how to limit the number of items someone can insert in a ListBox. 
Let say you have a task to limit the entrance of items to be 5. Here is the source code:

        Dim item As Integer
        item  = TextBox1.Text
        If Not ListBox1.Items.Count = 5 Then
            ListBox1.Items.Add(item)
        Else
            MsgBox("You already entered 5 grades")
        End If

Very simple and clean code.

Calculate average of numbers in a ListBox in Visual Basic 2015

Calculate average of numbers in a ListBox in Visual Basic 2015
Calculate average of numbers in a ListBox in Visual Basic 2015
Calculating averages of a set of numbers in ListBox control in Visual Basic is very easy task. Because listbox stores strings we should convert the data in the listbox. Before we calculate the average we have to determine all the numbers or total and the current count.

Here is the source code:

        Dim AllNumbers As Double = 0
        Dim Current As Double = 0
        Dim Average As Double = 0
        For i As Integer = 0 To ListBox1.Items.Count - 1
            AllNumbers += Val(ListBox1.Items(i))
            Current += 1
        Next
        Average = AllNumbers / Current
        TextBox2.Text = Average.ToString

Saturday, September 17, 2016

ListBox Complete Tutorial - Visual Basic 2015

Add data from TextBox into ListBox in Visual Basic 2015


Put one button into the form and title it "Add", Property Name btnAdd. In this button we can put the code. There are several ways to program this button to add data from the textbox into the listbox control.

    Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
        ListBox1.Items.Add(TextBox1.Text)
    End Sub

    Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
        Dim txtboxinfo As String
        txtboxinfo = TextBox1.Text
        ListBox1.Items.Add(txtboxinfo)
    End Sub

Add numbers from 1 to 20 in ListBox control in Visual Basic 2015

    Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
        Dim i As Integer

        For i = 1 To 20
            ListBox1.Items.Add(i)
        Next
    End Sub

Make summary of all items in ListBox and show the results in a TextBox

    Private Sub btnSum_Click(sender As Object, e As EventArgs) Handles btnSum.Click
        Dim sum As Double
        For x As Integer = 0 To ListBox1.Items.Count - 1
            sum += CDbl(ListBox1.Items(x))
        Next
        TextBox1.Text = sum.ToString
    End Sub

Presenting the data can be done even in the ListBox. Usually I am not adding them in the listbox just to do not make difficulties if I have to use the Listbox items again.

    Private Sub btnSum_Click(sender As Object, e As EventArgs) Handles btnSum.Click
        Dim sum As Double
        For x As Integer = 0 To ListBox1.Items.Count - 1
            sum += CDbl(ListBox1.Items(x))
        Next
        ListBox1.Items.Add(sum.ToString)
    End Sub

Delete selected item from ListBox control in Visual Basic 2015

Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles Delete.Click
 Dim itemfordeletion
 itemfordeletion = ListBox1.SelectedItem
 ListBox1.Items.Remove(itemfordeletion)
End Sub

Transfer data from ListBox1 to ListBox2 in Visual Basic 2015

    Private Sub btnTransfer_Click(sender As Object, e As EventArgs) Handles btnTransfer.Click
        Dim i As Integer

        For i = 0 To ListBox1.Items.Count - 1
            ListBox2.Items.Add(ListBox1.Items(i))
        Next
    End Sub

If you want to clear the listbox1 after all data are transferred into the listbox1 2 you need to apply the following code at the end.

    Private Sub btnTransfer_Click(sender As Object, e As EventArgs) Handles btnTransfer.Click
        Dim i As Integer

        For i = 0 To ListBox1.Items.Count - 1
            ListBox2.Items.Add(ListBox1.Items(i))
        Next

        ListBox1.Items.Clear()
    End Sub

So I isolate the code to clear all listbox if necessary.

   Private Sub btnClear_Click(sender As Object, e As EventArgs) Handles btnClear.Click
        ListBox1.Items.Clear()
    End Sub

Search for an item in ListBox

    Private Sub btnFind_Click(sender As Object, e As EventArgs) Handles btnFind.Click
        Dim index As Integer = ListBox1.FindString(TextBox1.Text)
        If index <> -1 Then
            ListBox1.SetSelected(index, True)
        Else
            MessageBox.Show("We didn't find any item in the ListBox", "No item", MessageBoxButtons.OK)
        End If
    End Sub

Open Text File in ListBox

First you have to insert the code:
Imports System.IO

    Private Sub btnOpenTextFile_Click(sender As Object, e As EventArgs) Handles btnOpenTextFile.Click
        Dim OpenFileDialog1 As New OpenFileDialog
        OpenFileDialog1.FileName = ""
        OpenFileDialog1.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"

        If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
            Dim lines = File.ReadAllLines(OpenFileDialog1.FileName)
            ListBox1.Items.Clear()
            ListBox1.Items.AddRange(lines)
        End If
    End Sub

Save ListBox items in Text File

    Private Sub btnSave_Click(sender As Object, e As EventArgs) Handles btnSave.Click
        Dim SaveFileDialog1 As New SaveFileDialog
        SaveFileDialog1.FileName = ""
        SaveFileDialog1.Filter = "Text Files (*.txt)|*.txt|All Files (*.*)|*.*"

        If SaveFileDialog1.ShowDialog() = DialogResult.OK Then
            Dim sb As New System.Text.StringBuilder()

            For Each o As Object In ListBox1.Items
                sb.AppendLine(o)
            Next

            System.IO.File.WriteAllText(SaveFileDialog1.FileName, sb.ToString())
        End If
    End Sub

 

Open Text File in ListBox control in Visual Basic 2015

You can open text file in ListBox control in Visual Basic 215 on many ways. In this post I share the way of opening text file line by line.

Test text file

First you have to add the following code!

Imports System.IO

After add the code to the button Open file.

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Dim OpenFileDialog1 As New OpenFileDialog

        If OpenFileDialog1.ShowDialog() = DialogResult.OK Then
            Dim lines = File.ReadAllLines(OpenFileDialog1.FileName)
            ListBox1.Items.Clear()
            ListBox1.Items.AddRange(lines)
        End If
    End Sub

When you open the file it looks like the image bellow.

Open text file in ListBox
Open text file in ListBox

You can check my other posts about ListBox:
- Insert data from TextBox and InputBox into ListBox
- Delete Selected Item from ListBox in Visual Basic 2015

Thursday, September 15, 2016

Delete Selected Item from ListBox in Visual Basic 2015

To delete selected item from listbox you need to use the following code.

Private Sub btnDelete_Click(sender As Object, e As EventArgs) Handles Delete.Click
 Dim itemfordeletion
 itemfordeletion = ListBox1.SelectedItem
 ListBox1.Items.Remove(itemfordeletion)
End Sub

Wednesday, September 14, 2016

Insert data from TextBox and InputBox into ListBox

Insert data from TextBox into ListBox in Visual Basic 2015



PrivateSub btnAdd_Click(sender AsObject, e AsEventArgs) Handles btnAdd.Click
 ListBox1.Items.Add(TextBox1.Text)
End Sub

Insert data from InputBox into ListBox in Visual Basic 2015



Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim myitemdata
        myitemdata = InputBox(“Enter your Item”)
        ListBox1.Items.Add(myitemdata)
End Sub

My Previews tutorial:  Working with TextBox control in Visual Basic 2015