Friday, October 29, 2010

Friiday, October 29th 2010



Public Class Rectangle

Dim dblLength As Double
Dim dblWidth As Double



Public Function CalculateArea() As Double
Return (dblLength * dblWidth)
End Function

Sub New(ByVal [_length] As Double, ByVal [_width] As Double)
dblLength = _length
dblWidth = _width

End Sub

End Class



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myLength As Double = InputBox("Please enter the length of the box")
Dim myWidth As Double = InputBox("Please enter the width of the box")

Dim myRectangle As New Rectangle(myLength, myWidth)
Me.Label1.Text = "The area is: " & myRectangle.CalculateArea

makeRectangle(myLength, myWidth)


End Sub

Public Sub makeRectangle(ByVal myLength, ByVal myWidth)


Dim firstX, firstY, secondX, secondY As Integer

firstY = 30
firstX = 30
secondY = firstY
secondX = (firstX + myLength) * 2

drawLine(firstX, firstY, secondX, secondY)

firstY = (30 + myWidth) * 2
firstX = 30
secondY = firstY
secondX = (firstX + myLength) * 2

drawLine(firstX, firstY, secondX, secondY)


firstY = 30
firstX = 30
secondY = (firstY + myWidth) * 2
secondX = firstX

drawLine(firstX, firstY, secondX, secondY)

firstY = 30
firstX = (30 + myLength) * 2
secondY = (firstY + myWidth) * 2
secondX = firstX

drawLine(firstX, firstY, secondX, secondY)

End Sub

Private Sub drawLine(ByVal firstX As Integer, ByVal firstY As Integer, ByVal secondX As Integer, ByVal secondY As Integer)
Dim myGraphics As Graphics
Dim myPen As Pen

'’ set the color and the width of the pen
myPen = New Pen(Color:=Color.Blue, Width:=2)

'’ set where the graphics will be drawn
myGraphics = Graphics.FromHwnd(hwnd:=ActiveForm().Handle)

'’ draw the line between two points
myGraphics.DrawLine(pen:=myPen, x1:=firstX, y1:=firstY, x2:=secondX, y2:=secondY)
End Sub

Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click

End Sub

Thursday, October 28, 2010

Thursday, 10/28/2010

Here is a tutorial done by Evangelos Petroutsos


Dim Payment As Double
Dim LoanIRate As Double
Dim LoanDuration As Integer
Dim LoanAmount As Integer

' Validate amount
If IsNumeric(txtAmount.Text) Then
LoanAmount = Convert.ToInt32(txtAmount.Text)
Else
MsgBox("Please enter a valid amount.")
Exit Sub
End If
' Validate interest rate
If IsNumeric(txtRate.Text) Then
LoanIRate = 0.01 * Convert.ToDouble(txtRate.Text) / 12
Else
MsgBox("Invalid interest rate, please re-enter.")
Exit Sub
End If
'Validate loan's duration
If IsNumeric(txtDuration.Text) Then
LoanDuration = Convert.ToInt32(txtDuration.Text)
Else
MsgBox("Please specifiy the loan's duration as a number of months")
Exit Sub
End If
'If all data were validated, proceed with calculations
Dim payEarly As DueDate
If chkPayEarly.Checked Then
payEarly = DueDate.BegOfPeriod
Else
payEarly = DueDate.EndOfPeriod
End If
Payment = Pmt(LoanIRate, LoanDuration, -LoanAmount, 0, payEarly)
txtPayment.Text = Payment.ToString("#.00")


Here is a rich text editor with lots of dialog boxes dealing with saving, loading etc.


Private Sub FileToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FileToolStripMenuItem.Click

End Sub

Private Sub NewToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewToolStripMenuItem.Click
txtField.Clear()

End Sub

Private Sub OpenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OpenToolStripMenuItem.Click
Try
Dim dlg As OpenFileDialog = New OpenFileDialog
dlg.Title = "Open"
dlg.Filter = "Rich Text Files (*.rtf) | *.rtf"
If dlg.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
txtField.LoadFile(dlg.FileName)
End If
Catch ex As Exception : End Try
End Sub

Private Sub SaveToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveToolStripMenuItem.Click
Try
Dim dlg As SaveFileDialog = New SaveFileDialog
dlg.Title = "Save"
dlg.Filter = "Rich Text Files (*.rtf) | *.rtf"
If dlg.ShowDialog() = System.Windows.Forms.DialogResult.OK Then
txtField.SaveFile(dlg.FileName, RichTextBoxStreamType.RichText)
End If
Catch ex As Exception : End Try
End Sub

Private Sub ExitToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ExitToolStripMenuItem.Click
End
End Sub

Private Sub EditToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EditToolStripMenuItem.Click

End Sub

Private Sub UnoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UnoToolStripMenuItem.Click
txtField.Undo()

End Sub

Private Sub FontToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FontToolStripMenuItem.Click
Try
Dim dlg As FontDialog = New FontDialog
dlg.Font = txtField.Font
If dlg.ShowDialog = System.Windows.Forms.DialogResult.OK Then
txtField.Font = dlg.Font
End If
Catch ex As Exception

End Try
End Sub

Private Sub ColorToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ColorToolStripMenuItem.Click
Try
Dim dlg As ColorDialog = New ColorDialog
dlg.Color = txtField.ForeColor
If dlg.ShowDialog = System.Windows.Forms.DialogResult.OK Then
txtField.ForeColor = dlg.Color
End If
Catch ex As Exception

End Try
End Sub


I also did a tutorial on do while loops


Dim Num1 As Integer = 1

Do While Num1 <= 10
MessageBox.Show("the value of the variable is: " & Num1)
Num1 = Num1 + 1
Loop

Tuesday, October 26, 2010

Tuesday, October 26 2010

Here is the code for the finished program I made, the one that draws a line.


Private Sub form1_mousedown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown
mouseClickCounter = mouseClickCounter + 1

If mouseClickCounter = 1 Then
firstX = e.X
firstY = e.Y
messageToMe(firstX, firstY)
ElseIf mouseClickCounter = 2 Then
secondX = e.X
secondY = e.Y

Dim myGraphics As Graphics
Dim myPen As Pen

myPen = New Pen(Color:=Color.Black, Width:=2)
myGraphics = Graphics.FromHwnd(hwnd:=ActiveForm().Handle)

myGraphics.DrawLine(pen:=myPen, x1:=firstX, y1:=firstY, x2:=secondX, y2:=secondY)
messageToMe(secondX, secondY)

firstX = 0
firstY = 0
secondX = 0
secondY = 0
mouseClickCounter = 0

End If


End Sub

Public Sub messageToMe(ByVal X As Integer, ByVal Y As Integer)
MessageBox.Show("Hello!" & " " & mouseClickCounter & vbTab & "(" & X & ", " & Y & ")")
End Sub
End Class

Monday, October 25, 2010

Monday, October 25th 2010

Me preliminary course load for the upcoming Spring semester:


Scripting 23122 CSYS 2033-190
VB.net / ASP / SQL 22290 CSCI 2893-101
PHP Programming 23990 CSYS 2463-101
Principles of Microeconomics 21483 ECON 2023-313
Intermediate Algebra 22638 March 0123-316


I hope that none of these classes will be canceled.


Overloads Function CountFiles(ByVal minSize As Integer, ByVal maxSize As Integer) As Integer
Debug.WriteLine("You've reqested the files between " & minSize & " and " & maxSize & " bytes.")
Dim files() As String
files = System.IO.Directory.GetFiles("c:\windows")
Dim i, fileCount As Integer
For i = 0 To files.GetUpperBound(0)
Dim FI As New System.IO.FileInfo(files(i))
If FI.Length >= minSize And FI.Length <= maxSize Then
fileCount = fileCount + 1
End If
Next
Return (fileCount)
End Function

Overloads Function CountFiles(ByVal fromDate As Date, ByVal toDate As Date) As Integer
Debug.WriteLine("You've requested the count of files creadted from " & fromDate & " to " & toDate)
Dim files() As String
files = System.IO.Directory.GetFiles("C:\windows")
Dim i, fileCount As Integer
For i = 0 To files.GetUpperBound(0)
Dim FI As New System.IO.FileInfo(files(i))
If FI.CreationTime.Date >= fromDate And FI.CreationTime.Date <= toDate Then
fileCount = fileCount + 1
End If
Next
Return (fileCount)
End Function

Overloads Function CountFiles(ByVal type As String) As Integer
Debug.WriteLine("You've requested the " & type & " files")
'Function Implementation
End Function

Overloads Function CountFiles(ByVal minSize As Integer, ByVal maxSize As Integer, ByVal type As String) As Integer
Debug.WriteLine("You've requested the " & type & " files between " & minSize & " and " & maxSize & " bytes")
End Function

Overloads Function CountFiles(ByVal fromDate As Date, ByVal toDate As Date, ByVal type As String) As Integer
Debug.WriteLine("You've requested teh " & type & " files created from " & fromDate & " to " & toDate)
End Function




Try
Dim num_Items As Integer = Integer.Parse("12345678")
Catch ex As Exception
Console.WriteLine(ex.Message)

End Try





Dim a As Double = 5.687
Dim b As Int32 = 1234

Console.WriteLine(a.ToString)
Console.WriteLine(b.ToString)
Console.WriteLine(483733.2324.ToString)

Dim C As Integer
Console.WriteLine(C.GetType())
Console.WriteLine(C.GetType().ToString)

Console.ReadLine()





i = 3 Or 4
Console.WriteLine(i)
i = 2 And 4
Console.WriteLine(i)
i = 3 Xor 3
Console.WriteLine(i)
i = Not 5
Console.WriteLine(i)
Console.ReadLine()


Here is something I made about drawing lines



Dim myGraphics As Graphics
Dim myPen As Pen

Dim firstX As Integer = InputBox("Please enter the first X coordinate")
Dim firstY As Integer = InputBox("Please enter the first y coordinate")
Dim secondX As Integer = InputBox("please enter the second X coordinate")
Dim secondY As Integer = InputBox("please enter the second Y coordinate")



myGraphics = Graphics.FromHwnd(hwnd:=ActiveForm().Handle)
myPen = New Pen(Color:=Color.Blue, Width:=3)
myGraphics.DrawLine(pen:=myPen, x1:=firstX, y1:=firstY, x2:=secondX, y2:=secondY)

Friday, October 22, 2010

Friday, October 22 2010

This isn't really that fancy, but I mostly did it on my own. I am populating a textbox with more textboxes, where the textboxes location is being determined randomly. I like it.


Public Class Form1

Dim arrayName(1000) As String
Dim index As Integer = 0


Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
playingField.Width = 1200
playingField.Height = 800
playingField.Left = ClientRectangle.Left + 7

Randomize()
Dim x As Integer
Dim y As Integer
Dim MyNewTextbox As New TextBox


x = (Int(Rnd() * 1150)) + playingField.Left + 3
y = (Int(Rnd() * 750)) + playingField.Top + 3

arrayName(index) = "Box" & index




index += 1
MyNewTextbox.Size = New Size(20, 20)
MyNewTextbox.Text = "0"
MyNewTextbox.Location = New Point(x, y)
MyNewTextbox.ForeColor = Color.White
MyNewTextbox.BackColor = Color.Black
MyNewTextbox.BorderStyle = BorderStyle.None
MyNewTextbox.Name = arrayName(index)

If arrayName(index) = "box5" Then
MyNewTextbox.ForeColor = Color.Red

End If

If index Mod 7 = 1 Then
MyNewTextbox.ForeColor = Color.Green
End If

Me.Controls.Add(MyNewTextbox)
MyNewTextbox.BringToFront()





End Sub

Private Sub playingField_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles playingField.TextChanged

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
For i = 0 To 1000
arrayName(i) = "box" & i
Next i

End Sub
End Class




Dim Message As String
Select Case Now.DayOfWeek
Case DayOfWeek.Monday
Message = "Have a nice week"
Case DayOfWeek.Friday
Message = "Have a nice weekend!"
Case Else
Message = "Welcome back!"

End Select

'' I added a title to the message box, I've done it before from tutorials but couldn't remeber how to do it off the top of my head.

MsgBox(Message, 0, "Title")


End Sub
End Class


These tutorials are from Evangelos Petroutsos

''The IndexOf method locates an instance of a character in a string


Dim MyText As String
MyText = "The quick brown fox jumped over the lazy dog."
Dim position, words As Integer
position = 0 : words = 0
Do While position >= 0
position = MyText.IndexOf(" ", position + 1)
words += 1
Loop
MsgBox("There are " & words & " words in the text.")



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

'' Pmt() is a built-in function for figuring out payments

Dim mPay, totalPay As Double
'' I edited this to allow the end user to put some of their own information
Dim years As Integer
Dim months As Integer

years = InputBox("How many years will you be paying the loan?")
months = monthlyOrNot()
MsgBox(months)
Dim Duration As Integer = months * years
Dim Rate As Single = (7.25 / 100) / 12
Dim Amount As Single = 20000
mPay = -Pmt(Rate, Duration, Amount)
totalPay = mPay * Duration
MsgBox("Each payment will be " & mPay.ToString("C") & vbCrLf & "You will pay back a total of " & totalPay.ToString("C"))




End Sub
Public Function monthlyOrNot()
If MsgBox("Will you be paying monthly?", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
Return 12
ElseIf MsgBox("Will it be quarterly?", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
Return 4
ElseIf MsgBox("Will the payment be bimonthly?", MessageBoxButtons.YesNo) = Windows.Forms.DialogResult.Yes Then
Return 6
Else
Return 1
End If
End Function

Thursday, October 21, 2010

Thursday 10/21/2010

Here is a quick tutorial I did off of Youtube



Dim X As Integer
Dim Num1 As Integer
Dim size1 As Integer = 1000
Dim arrayStore(size1) As Integer

Randomize()

For X = 1 To 1000
Num1 = Rnd() * 9 + 1
TextBox1.AppendText(Str(Num1))
arrayStore()
Next

Wednesday, October 20, 2010

Wednesday, October 20th 2010


Public Class Form1

Dim goRight As Boolean
Dim goBottom As Boolean
Dim tickCount As Integer

Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lblOne.Click

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick


tickCount += 1



If lblOne.Left >= TextBox1.Right - lblOne.Width - 4 Then
goRight = False
End If

If lblOne.Left <= TextBox1.Left + 3 Then
goRight = True
End If

If goRight = True Then
lblOne.Left += 5
Else
lblOne.Left -= 5
End If


If lblOne.Top <= TextBox1.Top + 3 Then
goBottom = False
End If

If lblOne.Top >= TextBox1.Bottom - lblOne.Height - 4 Then
goBottom = True
End If




If goBottom = True Then
lblOne.Top -= 5
Else
lblOne.Top += 5
End If

End Sub

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Enabled = True
goRight = True
goBottom = True

tickCount = 1
lblOne.Text = "O"
lblOne.BackColor = TextBox1.BackColor

TextBox1.Width = Me.ClientRectangle.Width - 7
TextBox1.Left = Me.ClientRectangle.Left + 3
TextBox1.Height = Me.ClientRectangle.Height - 10
TextBox1.Top = Me.ClientRectangle.Top + 5


End Sub
End Class


I added the ability to move another character around


Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
Select Case e.KeyCode
Case Keys.Right
lblCharacter.Text = "X"
lblCharacter.Location = New Point(lblCharacter.Location.X + 5, lblCharacter.Location.Y)
Case Keys.Left
lblCharacter.Text = "X"
lblCharacter.Location = New Point(lblCharacter.Location.X - 5, lblCharacter.Location.Y)
Case Keys.Up
lblCharacter.Text = "X"
lblCharacter.Location = New Point(lblCharacter.Location.X, lblCharacter.Location.Y - 5)
Case Keys.Down
lblCharacter.Text = "X"
lblCharacter.Location = New Point(lblCharacter.Location.X, lblCharacter.Location.Y + 5)
End Select
End Sub


I also created a quick program that creates a form


Dim playingField As New TextBox
playingField.Width = 300
playingField.Height = 300
playingField.Multiline = True


Me.Controls.Add(playingField)


Here is a better version of the program to create a form



Dim textDisplay As New TextBox()
textDisplay.Location = New Point(ClientRectangle.Left + 7, ClientRectangle.Top + 7)
textDisplay.Size = New Size(200, 200)
textDisplay.Multiline = True
Me.Controls.Add(textDisplay)