Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 17 trang
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
Nội dung
16:08:28 BÀI 2: CÁC ĐIỀU KHIỂN CƠ BẢN Chương trình ví dụ: Label, RadioButton, Listbox, Checkbox ComboBox DateTimePicker, Textbox LinkLabel Bài 1 16:18:52 Chương trình ví dụ Picture box Giao diện thiết kế: Label Listbox Radiobutton Groupbox Checkbox Combobox Bài 2 16:15:46 Chương trình ví dụ Thuộc tính đối tượng Đối tượng Button Thuộc tính Giá trị Name bttExit Text Kết thúc GroupBox RadioButton RadioButton RadioButton Label Đối tượng Label PictureBox Name RadioPC Text PC Name RadioLaptop Text Laptop Name RadioMac Text Mac Text Loại tiền Checkbox Checkbox Checkbox Combobox Thuộc tính Giá trị Text Thiết bị khác (chọn 1) Name PictureBox1 SizeMode StretchImage Name chkXedap Text Xe đạp Name chkXemay Text Xe máy Name chkXehoi Text Xe Name Combobox1 Bài 3 16:15:45 Thêm Items cho Listbox: Chọn thuộc tính Items Listbox lstKhac Click vào nút Browse bên phải Nhập Items: Thực tương tự cho Combobox Combobox1 Bài 4 23:36:25 Chương trình ví dụ Viết mã lệnh: DoubleClick vào RadioButton RadioPC, mã lệnh: 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 ‘_’ sau System.Drawing.Image.FromFile dấu xuống dòng dòng mã dài Đường dẫn ảnh thực cách copy ảnh vào thư mục chứa dự án kéo trực tiếp từ cửa sổ Solution Explorer vào đoạn mã Bài 5 10:31:36 Chương trình ví dụ Lấy đường dẫn ảnh: Click vào nút Show All Files cửa sổ Solutions Explorer Click vào file ảnh vào kéo vào cửa sổ mã lệnh Thực tương tự cho Radiobutton RadioMac RadioLaptop Bài 6 23:36:25 Chương trình ví dụ Viết mã lệnh: DoubleClick vào Checkbox chkXedap, mã lệnh: 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 tương tự cho Checkbox chkXehoi chkXemay tương ứng với PictureBox3 PictureBox4 Bài 7 23:36:25 Chương trình ví dụ Viết mã lệnh: DoubleClick vào Listkbox lstKhac, mã lệnh: Private Sub lstKhac_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstKhac.SelectedIndexChanged Select Case lstKhac.SelectedIndex Case PictureBox5.Image = System.Drawing.Image.FromFile _ ("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\photocopy.png") PictureBox5.Visible = True Case PictureBox5.Image = System.Drawing.Image.FromFile _ ("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\cellphone.png") PictureBox5.Visible = True Case PictureBox5.Image = System.Drawing.Image.FromFile _ ("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\calc.png") PictureBox5.Visible = True End Select End Sub Bài 8 23:36:25 Chương trình ví dụ Viết mã lệnh: Private Sub lstKhac_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstKhac.SelectedIndexChanged SelectedIndexChanged: kiện xảy Items chọn Listbox thay đổi Select Case lstKhac.SelectedIndex SelectedIndex: số thứ tự Items chọn Bài 9 23:36:25 Select Case BiểuThức Case DanhSáchGiáTrị CácCâuLệnh [Case Else CácCâuLệnh] End Select q Hoạt động: BiểuThức tính tốn kết khớp với biểu thức DanhSáchGiáTrị câu lệnh Case CácCâuLệnh sau thực Nếu khơng khớp với DanhSáchGiáTrị CácCâuLệnh sau Case Else thực Bài 10 10 Select Case WeekNumber Case MessageBox.Show("Monday") Case MessageBox.Show("Tuesday") Case MessageBox.Show("Wednesday") Case MessageBox.Show("Thursday") Case MessageBox.Show("Friday") Case MessageBox.Show("Saturday") Case MessageBox.Show("Sunday") Case Else MessageBox.Show("Number not in the range…") End Select Select Case QtyOrdered Case 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 Bài 11 11 DoubleClick vào Combobox ComboBox1, mã lệnh: 08:05:02 Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged Select Case ComboBox1.SelectedIndex Case PictureBox6.Image = System.Drawing.Image.FromFile _ ("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\dollar.png") PictureBox6.Visible = True Case PictureBox6.Image = System.Drawing.Image.FromFile _ ("E:\Visual Studio 2015\Projects\Use controls\UseControls\UseControls\pound.jpg") PictureBox6.Visible = True Case 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 button bttExit, mã lệnh: Private Sub bttExit_Click(sender As Object, e As EventArgs) Handles bttExit.Click End Bài 12 End Sub 12 23:36:25 Thêm Items vào Listbox ComboBox 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") Bài 13 13 23:36:25 Mở rộng chương trình: ComboBox Xử lý người dùng gõ giá trị chưa có ComboBox Picture6 khơng thay đổi Hiện chuỗi liệu người dùng nhập ComboBox lên Picture6 Bài 14 14 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: kiện xảy gõ ký tự ComboBox PictureBox6.Image = Nothing : xóa ảnh PictureBox6 Hiện liệu người dùng nhập ComboBox lên PictureBox Dùng kiện Paint để vẽ lại PictureBox Bài 15 15 23:36:25 Mở rộng chương trình ví dụ 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 lớp Graphics để đưa String lên PictureBox: - Font Verdana, kích thước 12, in đậm - Màu: Red - Tọa độ in chuỗi: x = 0, y = Bài 16 16 13:10:50 Chỉ dùng kiện Paint người dùng nhập chuỗi khơng có danh sách Dùng thêm biến NoPaint Bài 17 17 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 Bài 18 18 23:36:25 Bài Xuống hàng sau khoảng trắng 19 19 23:36:25 Private Sub PictureBox6_Paint(sender As Object, e As PaintEventArgs) Handles PictureBox6.Paint Dim ypos As Integer = 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 Bài 20 20 10 13:17:03 Dùng ImageList Bài 21 21 13:21:12 Mã lệnh cho Listbox lstKhac: Private Sub lstKhac_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstKhac.SelectedIndexChanged Select Case lstKhac.SelectedIndex Case PictureBox5.Image = imglistClipArt.Images(6) PictureBox5.Visible = True Case PictureBox5.Image = imglistClipArt.Images(7) PictureBox5.Visible = True Case PictureBox5.Image = imglistClipArt.Images(8) PictureBox5.Visible = True End Select End Sub Sửa lại mã lệnh đối tượng khác Bài 22 22 11 23:36:25 Mở rộng chương trình: DateTimePicker Bổ sung thêm đối tượng cho chương trình: DateTimePicker datepickerNgaygiao Label Label Label Textbox txtNgaydat Bài Textbox txtNgaygiao 23 23 DoubleClick vào DateTimePicker datepickerNgaygiao, mã lệnh: 13:21:12 Private Sub datepickerGiaohang_ValueChanged(sender As Object, e As EventArgs) Handles datepickerGiaohang.ValueChanged txtNgaydat.Text = Now txtNgaygiao.Text datepickerGiaohang.Value End Sub Bài 24 24 12 Thay đổi định dạng thời gian: hàm Format 13:21:12 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 Bài 25 25 13:21:12 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 “dd” Ngày, vd: 04 “ddd” Ngày, vd: Fri “dddd” Ngày, vd: Friday “MM” Tháng, vd: 10 “MMM” Tháng, vd: Oct “MMMM” Tháng, vd: October “yy” Năm, vd: 19 “yyyy” Năm, vd: 2019 Bài 26 26 13 13:21:12 Mở rộng chương trình: LinkLabel LinkLabel Label Bài 27 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 hay 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 LinkLabel1.LinkArea = New LinkArea(6, 5) Start: 6, Length: Click hay trang chủ LinkLabel1.Links.Add(19, 9) Start: 19, Length: 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 Bài End Sub 28 28 14 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 hay 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 Bài 29 29 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 Bài 30 30 15 Mở rộng chương trình: LinkLabel, StatusBar 13:21:12 statusPanel.BorderStyle = StatusBarPanelBorderStyle.Sunken Đường biên status panel: - None: khơng - Sunken: 3D chìm - Raised: 3D statusPanel.AutoSize = StatusBarPanelAutoSize.Spring Điều chỉnh kích thước status panel: - None: không - Contens: tự chỉnh theo nội dung - Spring: chia cho phần tử có thuộc tính Spring Bài 31 31 Mở rộng chương trình: LinkLabel, StatusBar 13:21:12 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 Bài 32 32 16 13:21:12 Bài 33 33 17