Thực hành lập trình CSDL với VB.net - 12

Khi nhấn vào nút lệnh hỏi người dùng có muốn kết thúc tìm kiếm không. Nếu chọn Yes sẽ đóng form tìm kiếm. Nếu chọn No sẽ trở lại form.

2.1.2 Hướng dẫn thực hiện


Công việc 1. Thiết kế một form để tìm kiếm thông tin và hiển thị kết quả trên form theo các mẫu sau:

1. Tạo form tìm kiếm khách hàng, mặt hàng theo mẫu

a) Tạo form tìm kiếm khách hàng


Hình 41 Form tìm kiếm thông tin khách hàng a Tạo form tìm kiếm khách hàng 1 1

Hình 41. Form tìm kiếm thông tin khách hàng

a) Tạo form tìm kiếm khách hàng

Có thể bạn quan tâm!

Xem toàn bộ 318 trang tài liệu này.

1. Phân tích yêu cầu:

Theo yêu cầu trên thì phải có một form chứa:

- Các đối tượng có nội dung “TÌM KIẾM THÔNG TIN”, “Tìm theo”, “Nội dung tìm kiếm” là các Label.

- Các đối tượng lựa chọn Mã khách hàng, Tên khách hàng, Tất cả là các điều khiển radio button.

- Ô nhập nội dung tìm kiếm là một textbox

- Các nút Tìm kiếm, Kết thúc là các đối tượng Button

- Lưới hiển thị kết quả tìm kiếm là một DataGridView.

2. Hướng dẫn thao tác:

Để thực hiện yêu cầu trên phải:

Tạo form mới với tên frmTimKiemKhachHang bằng cách thực hiện các thao tác: Trên thanh menu, chọn Project/Add New Item.

Xuất hiện cửa sổ Add New Item. Chọn loại Windows Form, sau đó nhập tên frmTimKiemKhachHang vào ô Name rồi nhấn nút Add.

Hình 42 Cửa sổ Add New Item Để tạo điều khiển label Tìm kiếm thông tin theo 2


Hình 42. Cửa sổ Add New Item


Để tạo điều khiển label Tìm kiếm thông tin theo yêu cầu thực hiện:

Kéo điều khiển Label từ của sồ Toolbox vào form. Nháy phải chuột vào Label chọn Properties và thiết lập các thuộc tính cho Label này:

Text: TÌM KIẾM THÔNG TIN

Font name: Microsoft Sans Serif

Font size: 18

Font bold: True

Fore color: Red

Trên menu chọn Format/Center in form/Horizontally để căn giữa.

Kéo điều khiển Groupbox từ cửa sổ Toolbox vào form và điều chỉnh kích thước, vị trí phù hợp. Thiết lập các thuộc tính cho điều khiển này tại cửa sổ Properties như sau:

Name: GroupBox1

Text: Nội dung tìm kiếm

Kéo các điều khiển label, radio button, textbox, button vào trong Groupbox vừa tạo và thiết lập các thông số cho các điều khiển lần lượt như sau:

Label Tìm theo, Nội dung tìm kiếm thiết lập font chữ, mầu sắc, cỡ chữ tương tự như đối với label Tìm kiếm thông tin bên trên

Kéo điều khiển radio button từ cửa sổ Toolbox vào form và điều chỉnh vị trí phù hợp. Thiết lập các thuộc tính cho điều khiển này tại cửa sổ Properties như sau:

Name: RadioButtonMa

Text: Mã khách hàng

Font name: Microsoft Sans Serif

Font size: 9

Các thuộc tính khác giữ nguyên mặc định Làm tương tự với 2 điều khiển radio button còn lại

Kéo điều khiển textbox từ cửa sổ Toolbox vào form và điều chỉnh kích thước, vị trí phù hợp. Thiết lập các thuộc tính cho điều khiển này tại cửa sổ Properties như sau:

Name: TextBoxNoiDung

Font name: Microsoft Sans Serif

Font size: 9

Các thuộc tính khác giữ nguyên mặc định

Kéo điều khiển button từ cửa sổ Toolbox vào form và điều chỉnh kích thước, vị trí phù hợp. Thiết lập thuộc tính cho điều khiển này tại cửa sổ Properties như sau:

Name: ButtonTimKiem

Font name: Microsoft Sans Serif

Font size: 9

Text: &Tìm kiếm

Các thuộc tính khác giữ nguyên mặc định

Làm tương tự với nút lệnh còn lại.

Kéo điều khiển Groupbox từ cửa sổ Toolbox vào form và điều chỉnh kích thước, vị trí phù hợp. Thiết lập các thuộc tính cho điều khiển này tại cửa sổ Properties như sau:

Name: GroupBox2

Text: Kết quả tìm kiếm

Kéo điều khiển DataGridView từ cửa sổ Toolbox vào form và thiết lập các thuộc tính cho điều khiển này tại cửa sổ Properties như sau:

Name: DataGridView1

Dock: Fill

AllowUserToAddRows: False

AllowUserToDeleteRows: False

SelectionMode: FullRowSelect

Các thuộc tính khác giữ nguyên mặc định Tiến hành viết mã lệnh cho các điều khiển như sau: Mã lệnh của điều khiển radiobutton Mã khách hàng

Private Sub RadioButtonMa_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButtonMa.CheckedChanged

TextBoxNoiDung.Text = Nothing TextBoxNoiDung.Enabled = RadioButtonMa.Checked

End Sub


Mã lệnh của điều khiển radiobutton Họ tên khách hàng


Private Sub RadioButtonHoTen_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButtonHoTen.CheckedChanged

TextBoxNoiDung.Text = Nothing

TextBoxNoiDung.Enabled = RadioButtonHoTen.Checked End Sub


Mã lệnh của điều khiển radiobutton Tất cả


Private Sub RadioButtonTatCa_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButtonTatCa.CheckedChanged

TextBoxNoiDung.Text = Nothing


TextBoxNoiDung.Enabled = Not RadioButtonTatCa.Checked End Sub


Mã lệnh của điều khiển button Tìm kiếm


Private Sub ButtonTimKiem_Click(ByVal sender As System.Object,

ByVal e As System.EventArgs) Handles ButtonTimKiem.Click 'Khai báo đối tượng và biến cần sử dụng

Dim sqlTimKiem As String


'Tạo câu lệnh truy vấn tương ứng với lựa chọn của người sử dụng If RadioButtonMa.Checked Then

'Tìm kiếm theo mã khác hàng


sqlTimKiem = "SELECT * FROM tblKhachHang WHERE [MaKH]=" & TextBoxNoiDung.Text

End If


If RadioButtonHoTen.Checked Then


'Tìm kiếm tương đối theo tên khách hàng

sqlTimKiem = "SELECT * FROM tblKhachHang WHERE HoTen LIKE '%" & TextBoxNoiDung.Text & "%' ORDER BY HoTen, MaKH"

End If


If RadioButtonTatCa.Checked Then 'Hiển thị tất cả khách hàng

sqlTimKiem = "SELECT * FROM tblKhachHang ORDER BY HoTen, MaKH"

End If


'Kết nối CSDL


'Thực hiện tìm kiếm và đưa kết quả ra lưới Using cn As New SqlConnection("Data

Source=PHANDUCTHIEN;Initial Catalog=QLYBH;User ID=sa;Password=admin123@")

Using cmd As New SqlCommand(sqlTimKiem, cn) cmd.CommandType = CommandType.Text cn.Open()

Dim ds As New DataSet()


Dim da As New SqlDataAdapter(cmd) da.Fill(ds)

Me.DataGridView1.DataSource = ds.Tables(0).DefaultView


Me.DataGridView1.Columns(0).HeaderText = "Mã khách

hàng"


Me.DataGridView1.Columns(1).HeaderText = "Họ tên khách

hàng"


Me.DataGridView1.Columns(2).HeaderText = "Giới tính" Me.DataGridView1.Columns(3).HeaderText = "Địa chỉ" Me.DataGridView1.Columns(4).HeaderText = "Điện thoại"

GroupBox2.Text = "Kết quả tìm kiếm (" + Me.DataGridView1.RowCount.ToString() + " kết quả)"

cn.Close() End Using

End Using End Sub


Mã lệnh của điều khiển button Kết thúc


Private Sub ButtonKetThuc_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonKetThuc.Click

Me.Close() End Sub

3. Kết quả thiết kế:



Hình 43. Kết quả thiết kế form tìm kiếm khách hàng

4. Kết quả thực thi:


Hình 44 Kết quả thực thi form tìm kiếm khách hàng 3

Hình 44. Kết quả thực thi form tìm kiếm khách hàng

Ngày đăng: 16/07/2022