1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Ngôn ngữ lập trình visua basic 2

17 29 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 17
Dung lượng 843,55 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Bài 2 5Chương trình ví dụ Viết mã lệnh: DoubleClick vào RadioButton RadioPC, mã lệnh: 23:36:25 Private Sub RadioPC_CheckedChangedsender As Object, e As EventArgs Handles RadioPC.CheckedC

Trang 1

1 Chương trình ví dụ: Label, RadioButton, Listbox,

Checkbox

2 ComboBox

3 DateTimePicker, Textbox

4 LinkLabel

BÀI 2: CÁC ĐIỀU KHIỂN CƠ BẢN

1 Bài 2

16:08:28

Chương trình ví dụ

16:18:52

Label

Listbox

3 Radiobutton

3 Checkbox

Groupbox

Combobox

1

Trang 2

Bài 2 3

Đối tượng Thuộc tính Giá trị

2 GroupBox

Thuộc tính các đối tượng

Đối tượng Thuộc tính Giá trị

(chọn 1)

SizeMode StretchImage

16:15:45

Thêm các Items cho Listbox:

Click vào nút Browse bên phải

Chọn thuộc tính Items của Listbox lstKhac

Nhập các Items:

Thực hiện tương tự cho Combobox Combobox1

3

4

Trang 3

Bài 2 5

Chương trình ví dụ

Viết mã lệnh:

DoubleClick vào RadioButton RadioPC, mã lệnh:

23:36:25

Private Sub RadioPC_CheckedChanged(sender As Object, e As EventArgs)

Handles RadioPC.CheckedChanged

If RadioPC.Checked Then

PictureBox1.Image = System.Drawing.Image.FromFile _

("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\pc.png")

PictureBox1.Visible = True

End If

End Sub

Dấu ‘_’ sauSystem.Drawing.Image.FromFile là dấu xuống dòng khi dòng mã quá dài.

Đường dẫn ảnh thực hiện bằng cách copy một bức ảnh bất kỳ vào thư mục chứa dự án và kéo

trực tiếp từ cửa sổ Solution Explorer vào trong đoạn mã.

Chương trình ví dụ

Lấy đường dẫn ảnh:

10:31:36

Click vào nút Show All Files trên cửa sổ Solutions Explorer

Click vào file ảnh vào kéo vào cửa sổ mã lệnh

Thực hiện tương tự cho 2 Radiobutton RadioMac và RadioLaptop

5

Trang 4

Bài 2 7

Chương trình ví dụ

Viết mã lệnh:

DoubleClick vào Checkbox chkXedap, mã lệnh:

23:36:25

Private Sub chkXedap_CheckedChanged(sender As Object, e As EventArgs)

Handles chkXedap.CheckedChanged

If chkXedap.Checked Then

PictureBox2.Image = System.Drawing.Image.FromFile _

( "E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\bike.png" )

PictureBox2.Visible = True

Else

PictureBox2.Visible = False

End If

End Sub

Thực hiện tương tự cho 2 Checkbox chkXehoi và chkXemay tương ứng với

PictureBox3 và PictureBox4.

Chương trình ví dụ

Viết mã lệnh:

23:36:25

Private Sub lstKhac_SelectedIndexChanged(sender As Object, e As

EventArgs) Handles lstKhac.SelectedIndexChanged

Select Case lstKhac.SelectedIndex

Case 0

PictureBox5.Image = System.Drawing.Image.FromFile _

( "E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\photocopy.png" )

PictureBox5.Visible = True

Case 1

PictureBox5.Image = System.Drawing.Image.FromFile _

( "E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\cellphone.png" )

PictureBox5.Visible = True

Case 2

PictureBox5.Image = System.Drawing.Image.FromFile _

("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\calc.png")

PictureBox5.Visible = True

End Select

End Sub

DoubleClick vào Listkbox lstKhac, mã lệnh:

7

8

Trang 5

Bài 2 9

Chương trình ví dụ

Viết mã lệnh:

23:36:25

Private Sub lstKhac_SelectedIndexChanged(sender As Object, e As

EventArgs) Handles lstKhac.SelectedIndexChanged

Select Case lstKhac.SelectedIndex

SelectedIndexChanged: sự kiện xảy ra khi Items được

chọn trên Listbox thay đổi

SelectedIndex: số thứ tự của Items đang chọn

23:36:25 Select Case BiểuThức

CaseDanhSáchGiáTrị

CácCâuLệnh [Case Else

CácCâuLệnh]

End Select

q Hoạt động:BiểuThứcsẽ được tính toán và kết quả nếu khớp với các hằng

hoặc các biểu thức trongDanhSáchGiáTrịcủa câu lệnh Case thìCácCâuLệnh

sau nó được thực hiện Nếu không khớp với bất kỳ DanhSáchGiáTrị thì

CácCâuLệnhsau Case Else sẽ thực hiện

9

Trang 6

Bài 2 11

Select Case WeekNumber

Case 1

MessageBox.Show("Monday")

Case 2

MessageBox.Show("Tuesday")

Case 3

MessageBox.Show("Wednesday")

Case 4

MessageBox.Show("Thursday")

Case 5

MessageBox.Show("Friday")

Case 6

MessageBox.Show("Saturday")

Case 7

MessageBox.Show("Sunday")

Case Else

MessageBox.Show("Number not in the range…")

End Select

Select Case QtyOrdered Case 1 To 10, 21, 23 CreditPoints = 10 Case 11 To 20 CreditPoints = 15 Case Is > 23 CreditPoints = 25 Case Else MessageBox.Show(“Không hợp lệ") End Select

08:05:02

Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As

EventArgs) Handles ComboBox1.SelectedIndexChanged

Select Case ComboBox1.SelectedIndex

Case 0

PictureBox6.Image = System.Drawing.Image.FromFile _

( "E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\dollar.png" )

PictureBox6.Visible = True

Case 1

PictureBox6.Image = System.Drawing.Image.FromFile _

( "E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\pound.jpg" )

PictureBox6.Visible = True

Case 2

PictureBox6.Image = System.Drawing.Image.FromFile _

( "E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\vnd.png" )

PictureBox6.Visible = True

End Select

DoubleClick vào Combobox ComboBox1, mã lệnh:

DoubleClick vào button bttExit, mã lệnh:

Private Sub bttExit_Click(sender As Object, e As EventArgs) Handles

bttExit.Click

End

End Sub

11

12

Trang 7

Bài 2 13

Thêm các Items vào Listbox và ComboBox trong lúc thực thi:

lstKhac.Items.Add(“Photocopy")

lstKhac.Items.Add(“Điện thoại di động")

lstKhac.Items.Add(“Máy tính bỏ túi")

ComboBox1.Items.Add("USD")

ComboBox1.Items.Add("Bảng Anh")

ComboBox1.Items.Add(“Việt Nam đồng")

23:36:25

Xử lý khi người dùng gõ giá trị chưa có trong ComboBox

Picture6 không thay đổi Hiện chuỗi dữ liệu do người dùng nhập trên ComboBox lên Picture6

13

Trang 8

Bài 2 15

23:36:25

Mở rộng chương trình ví dụ

Private Sub ComboBox1_TextChanged(sender As Object, e As EventArgs)

Handles ComboBox1.TextChanged

PictureBox6.Image = Nothing

PictureBox6.Visible = True

End Sub

TextChanged: sự kiện xảy ra khi gõ ký tự trên ComboBox

PictureBox6.Image = Nothing : xóa ảnh trên PictureBox6

Hiện dữ liệu người dùng nhập trên ComboBox lên PictureBox

Dùng sự kiện Paint để vẽ lại PictureBox

Private Sub PictureBox6_Paint(sender As Object, e As

PaintEventArgs) Handles PictureBox6.Paint

e.Graphics.DrawString(ComboBox1.Text, New Font("Verdana",

12, FontStyle.Bold), New SolidBrush(Color.Red), 0, 0)

End Sub

Dùng DrawString của lớp Graphics để đưa một String lên PictureBox:

- Font Verdana, kích thước 12, in đậm

- Màu: Red

- Tọa độ in chuỗi: x = 0, y = 0

15

16

Trang 9

Bài 2 17

13:10:50

Chỉ dùng sự kiện Paint khi

người dùng nhập chuỗi không

có trong danh sách

Dùng thêm biến NoPaint

13:29:57 Public Class Form1

Dim NoPaint As Boolean

Private Sub ComboBox1_SelectedIndexChanged(sender As Object,

e As EventArgs) Handles ComboBox1.SelectedIndexChanged

NoPaint = True

Select Case ComboBox1.SelectedIndex

Private Sub ComboBox1_TextChanged(sender As Object, e As

EventArgs) Handles ComboBox1.TextChanged

NoPaint = False

PictureBox6.Image = Nothing

PictureBox6.Visible = True

End Sub

Private Sub PictureBox6_Paint(sender As Object, e As

PaintEventArgs) Handles PictureBox6.Paint

If Not NoPaint Then

e.Graphics.DrawString(ComboBox1.Text, New Font("Verdana",

12, FontStyle.Bold), New SolidBrush(Color.Red), 0, 0)

End If

End Sub

17

Trang 10

Bài 2 19

23:36:25

Xuống hàng sau mỗi khoảng trắng

23:36:25 Private Sub PictureBox6_Paint(sender As Object, e As PaintEventArgs)

Handles PictureBox6.Paint

Dim ypos As Integer = 0

Dim str As String = ComboBox1.Text

Dim strarr() As String = str.Split(" ")

If Not NoPaint Then

For Each s As String In strarr

e.Graphics.DrawString(s, New Font("Verdana", 12,

FontStyle.Bold), New SolidBrush(Color.Red), 0, ypos)

ypos = ypos + 13

Next

End If

End Sub

19

20

Trang 11

Bài 2 21

Dùng ImageList

13:17:03

13:21:12

Private Sub lstKhac_SelectedIndexChanged(sender As Object, e As

EventArgs) Handles lstKhac.SelectedIndexChanged

Select Case lstKhac.SelectedIndex

Case 0

PictureBox5.Image = imglistClipArt.Images(6)

PictureBox5.Visible = True

Case 1

PictureBox5.Image = imglistClipArt.Images(7)

PictureBox5.Visible = True

Case 2

PictureBox5.Image = imglistClipArt.Images(8)

PictureBox5.Visible = True

End Select

End Sub

Mã lệnh cho Listbox lstKhac:

Sửa lại mã lệnh của các đối tượng khác

21

Trang 12

Bài 2 23

Mở rộng chương trình: DateTimePicker

Bổ sung thêm các đối tượng cho chương trình:

23:36:25

DateTimePicker

datepickerNgaygiao

Label

Label

Label

DoubleClick vào DateTimePicker datepickerNgaygiao, mã lệnh:

Private Sub datepickerGiaohang_ValueChanged(sender As Object, e As

EventArgs) Handles datepickerGiaohang.ValueChanged

txtNgaydat.Text = Now

txtNgaygiao.Text datepickerGiaohang.Value

End Sub

13:21:12

23

24

Trang 13

Bài 2 25

Private Sub datepickerGiaohang_ValueChanged(sender As Object, e As

EventArgs) Handles datepickerGiaohang.ValueChanged

txtNgaydat.Text = Format(Now, "ddd dd/MM/yyyy")

txtNgaygiao.Text = Format(datepickerGiaohang.Value, "ddd dd/MM/yyyy")

End Sub

Một số định dạng thời gian:

Ký hiệu Ví dụ

“Long Date” Friday Oct 4, 2019

“Short Date” 10/4/2019

“Long Time” 3:26:11 PM

“Short Time” 3:26 PM

“dddd” Ngày, vd: Friday

13:21:12

25

Trang 14

Bài 2 27

Mở rộng chương trình: LinkLabel

13:21:12

Private Sub frmBanhang_Load(sender As Object, e As EventArgs)

Handles Me.Load

LinkLabel1.Text = "Click ở đây hay về trang chủ"

LinkLabel1.LinkArea = New LinkArea(6, 5)

LinkLabel1.Links.Add(19, 9)

LinkLabel1.Links(0).LinkData = "google.com.vn"

LinkLabel1.Links(1).LinkData = "microsoft.com"

End Sub

Click ở đây hay về trang chủ

LinkLabel1.LinkArea = New LinkArea(6, 5)

Start: 6, Length: 5

LinkLabel1.Links.Add(19, 9) Start: 19, Length: 9

Private Sub LinkLabel1_LinkClicked(sender As Object, e As

LinkLabelLinkClickedEventArgs) Handles LinkLabel1.LinkClicked

If Not IsNothing(e.Link.LinkData) Then

System.Diagnostics.Process.Start(e.Link.LinkData.ToString())

End If

End Sub

27

28

Trang 15

Bài 2 29

Mở rộng chương trình: LinkLabel,

StatusBar

13:21:12

Public Class frmBanhang

Dim NoPaint As Boolean

Dim mainStatusBar As New StatusBar()

Dim statusPanel As New StatusBarPanel()

Dim datetimePanel As New StatusBarPanel()

Private Sub frmBanhang_Load(sender As Object, e As EventArgs) Handles

Me.Load

LinkLabel1.Text = "Click ở đây hay về trang chủ"

LinkLabel1.LinkArea = New LinkArea(6, 5)

LinkLabel1.Links.Add(19, 9)

LinkLabel1.Links(0).LinkData = "google.com.vn"

LinkLabel1.Links(1).LinkData = "microsoft.com"

CreateDynamicStatusBar()

End Sub

Mở rộng chương trình: LinkLabel,

StatusBar

13:21:12

Private Sub CreateDynamicStatusBar()

statusPanel.BorderStyle = StatusBarPanelBorderStyle.Sunken

statusPanel.Text = ""

statusPanel.AutoSize = StatusBarPanelAutoSize.Spring

mainStatusBar.Panels.Add(statusPanel)

datetimePanel.BorderStyle = StatusBarPanelBorderStyle.Raised

datetimePanel.Text = Now.ToLongDateString()

datetimePanel.AutoSize = StatusBarPanelAutoSize.Contents

mainStatusBar.Panels.Add(datetimePanel)

mainStatusBar.ShowPanels = True

Controls.Add(mainStatusBar)

End Sub

29

Trang 16

Bài 2 31

Mở rộng chương trình: LinkLabel,

StatusBar

13:21:12

statusPanel.BorderStyle = StatusBarPanelBorderStyle.Sunken

Đường biên của status panel:

- None: không

- Sunken: 3D chìm

- Raised: 3D nổi statusPanel.AutoSize = StatusBarPanelAutoSize.Spring

Điều chỉnh kích thước của status panel:

- None: không

- Contens: tự chỉnh theo nội dung

- Spring: chia đều cho các phần tử có thuộc tính Spring

Private Sub LinkLabel1_MouseLeave(sender As Object, e As EventArgs)

Handles LinkLabel1.MouseLeave

statusPanel.Text = ""

End Sub

Private Sub LinkLabel1_MouseMove(sender As Object, e As

MouseEventArgs) Handles LinkLabel1.MouseMove

Dim pos As Integer = MousePosition.X - LinkLabel1.Left - Me.Left

If (pos > 39) And (pos < 65) Then

statusPanel.Text = LinkLabel1.Links(0).LinkData

ElseIf (pos > 114) And (pos < 168) Then

statusPanel.Text = LinkLabel1.Links(1).LinkData

Else

statusPanel.Text = ""

End If

Mở rộng chương trình: LinkLabel,

StatusBar

13:21:12

31

32

Trang 17

Bài 2 33

13:21:12

33

Ngày đăng: 24/10/2020, 10:23

TỪ KHÓA LIÊN QUAN

w