Thêm nút lệnh New và Delete
Khi bạn thêm vào nút New và nút Delete, chúng vẫn chưa có hiệu lực do hai thủ tục New và Delete trống hay chưa có kịch bản của mã Visual Basic.Do vậy, trong thủ tục để thêm khă năng chèn và xoá các bản ghi, ban phải viết tổng cộng hai dòng mã Visual Basic : một dòng cho hàm thêm bản ghi và một dòng cho hàm xoá bản ghi.
Chú ý : Thêm một ký hiệu ( &) đến thuộc tính Caption của một nút lệnh ngay lập tức ký tự được gạch chân. Ký tự gạch chân ( cũng được hiểu như phím nóng ( hot key) ) được cung cấp như lời nhắc tới người sử dụng, bằng cách giữ cùng nút Crtl để thực hiện thủ tục.
|
Xem bảng 1.3 và hình 1.8 để biết chi tiết :
Hãy kích đúp vào nút Add để đến cửa sổ mã Visual Basic để thêm đoạn mã vào đằng ssau nút Add. Bạn sẽ nhìn thấy đầu và cuối thủ tục có săn cho bạn. Tất cả các cái bạn cần là thêm một dòng mã giữa chúng.
Private Sub cmdAdd_Click()
datTitles.Recordset.AddNew ` add a new record to the table
End Sub
Chú ý : Visual Basic tự động tạo Sub_End, những biên tập thông thường cho mỗi thủ tục mới được tạo. Khi bạn làm những bài tập trong quyển sách này.
|
Bây giờ hãy đến cửa sổ mã đằng sau nút Delete để thêm vào doạn mã Visual Basic :
Private Sub cmdDelete_Click()
datTitles.Recordset.Delete ` delete the current record
End Sub
Những thuộc tính thực hiện
RecordSet chỉ là một thuộc tính thực hiện của dữ liệu điều khiển. Thuộc tính này là một sự quan hệ đến bảng dữ liệu cơ sở được địng nghĩa trong thời điểm trình bày thuộc tính RecordSource. RecordSet được chuyển đến một bảng có sẵn trong cơ sở dữ liệu hoặc một bảng ảo.Như Visual Basic Dynaset hoặc Snapshot. Nó được bàn sâu hơn vào ngày thứ ba, “Những đối tượng cơ sở dữ liệu Visual Basic ”. Còn bây giờ, coi như thuộc tính RecordSet như một bản thực hiện của thuộc tính RecordSource mà bạn thiết lập khi bạn thiết kế form
Trong hai đoạn mã nhỏ trước, bạn đã sử dụng phương thức AddNew và Delete. Bạn sẽ được học thêm về những phương thức này và những phương thức khác trong bài của ngày thứ tư, “ Thiết lập những data entry form với bound control ”.
Hãy lưu đề án và chạy lại chương trình . Bây giờ bạn có thể kích vào nút Add và xem một tập vùng rỗng của những input control cho mục dữ liệu. Hãy điền tất cả chúng với một vài dữ liệu ( xem hình 1.9 cho một ví dụ của một ghi mới ), và sau đó chuyển đến bản ghi khác trong bảng. Dữ liệu được tự động lưu vào bảng. Bạn cũng có thể sử dụng nút Delete để xoá bản ghi. Đầu tỉên tìm đến bản ghi bạn vừa thêm vào ( nó là bản ghi cuối cùng trong bảng ), sau đó kích vào nút Delete. Bây giờ chuyển đến bản ghi trước đó và thử rời lại để xem bản ghi bạn vừa xoá. Bạn không thể trông thấy. Nó không ở đó !
Chú ý : Khi bạn nhập dữ liệu trong form này, bạn có thể đã chú ý rằng cái trình tự nhãn không theo một chuỗi logic nào. Vấn đề này xảy ra bởi vì bạn thêm cái điều khiển txtTitles đầu tiên, nhưng lại đặt cái điều khiển txtISBN vào vị trí đầu tiên của form. Visual Basic định nghĩa thứ tự nhãn của các điều khiển liên tiếp chúng đặt ở trên form. Để hiệu chỉnh đúng vấn đề này, lựa chọn điều khiển cuối cùng bạn muốn trong chuỗi nhãn của bạn ( trong trường hợp này,nút Exit ) và nhập 0 vào trong thuộc tính TabIndex. Tiếp tục thiết lập tất cả giá trị TabIndex về zero đói với tất cả điều khiển trong cái chuỗi nhãn. Hoàn thành quá trình bằng cách đặt giá trị TabIndex của điều khiển txtISBN về 0.
Thuộc tính TabIndex của một điều khiển được tăng lên 1 mỗi lần một giá rị nhỏ hơn được nhập vào trong điều khiển khác. Bởi vậy bằng cách thiết lập thuộc tính TabIndex của điều khiển txtISBN về 0, bạn đặt lại giá trị thuộc tính TabIndex của điều khiển txtTitle về 1, txtYearPub về 2 và vân vân.
|
Hình 1.9 :
Nếu bạn không nhập dữ liệu vào data entry form bạn tạo trong bài tập này giống như cách hình 1.9 ( cho ví dụ, bạn nhập những ký tự sai trong trường Year, nó chỉ nhận số ), bạn có thể nhận được một thông điệp lỗi từ Visual Basic 5 nói rằng bạn đã có dữ liệu không hợp lệ một trong các trường. Đây là giả thiết xảy đến ! Visual Basic 5 ( chính xác hơn, Microsoft Jet Engine ) kiểm tra tất cả các mục dữ liệu để bảo đảm rằng kiểu dữ liệu đúng được nhập trong mỗi trường hợp lệ, một cái ý nghĩa lớn của giới hạn mục dữ liệu thậm chí xa hơn nữa được làm kỹ hơn vào ngày thứ 5 “ Input Validation ” và bẫy lỗi được xem trong bài học của ngày 14, “ Lỗi xử lý trong Visual Basic 5 ”. Bạn có thể bỏ qua thông báo này ngay bây giờ.
Bản tóm tắt
Trong bài học của ngày hôm nay bạn học được những cái sau đây :
+ Bạn học làm thế nào để sử dụng điều khiển dữ liệu (data control ) để liên kết một form đến một cơ sở dữ liệu và bảng dữ liệu bằng cách thiết lập thuộc tính DatabaseName và DataSoucrce.
+ Bạn học làm thế nào để sử dụng điều khiển textbox bound input để liên kết một hộp input trên một form đến một bảng dữ liệu và trường dữ liệu bằng cách thiết lập thuộc tính DataSource và DataField.
+ Bạn học làm thế nào để kết hợp những nút lệnh chuẩn ( standard command buttons ) và phương thức ( method) Addnew và Delete cung cấp thêm bản ghi và xoá bản ghi hoạt động đến một data entry form.
Câu hỏi kiểm tra
1. Hai thuộc tính gì của điều khiển dữ liệu (data control) phải được đặt khi bạn liên kết một form đến một cơ sở dữ liệu và bảng dữ liệu có sẵn ?
2. Thuộc tính gì phải được thiết lập nếu bạn muốn điều khiển dữ liệu hiện thị tên của bảng dữ liệu ở giữ những mũi tên của thanh điều khiển dữ liệu.
3. Hai thuộc tính gì của điều khiển textbox phải được đặt khi bạn liên kết input control đến điều khiển dữ liệu trên một form.
4. Có bao nhiêu dòng mã được đưa vào hàm xoá một bản ghi đến Visual Basic form khi bạn sử dụng data control.
5. Thiết lập cái gì để bạn có thể chắc chắn rằng Visual Basic sẽ tự động lưu công việc của bạn mỗi lần bạn thử chạy một chương trình.
Bài tập
1. Thêm đoạn chữ “ The Titles Program” đến data entry form được tạo trong chương này.
2. Thêm vào nút lệnh có nhãn là Exit trên data entry form. Thêm đoạn mã sau nút lệnh này ở cuối chương trình khi bạn kích đúp vào nút.
3. Thay đổi nút Add để chuyển contrỏ đến vị trí điều khiển nhập đầu tiên ( txtISBN ) trên data entry form ( Gợi ý : Hãy tìm SetFocus trong giúp đỡ trực tuyến của Visual Basic ).
Ngày thứ hai :
Chia sẻ với bạn bè của bạn: |