Form là giao diện chủ yếu giữa người và máy
Form thường dùng để:
Thiết kế màn hình nhập dữ liệu
Thiết kế menu
Thiết kế các màn hình tra cứu thông tin
Thiết kế các màn hình giới thiệu, trợ gíup
Yêu cầu khi thiết kế giao diện phải thuận tiện cho
người sử dụng
Mọi đối tượng xuất hiện trên Form được gọi là điều
khiển. Điều khiển được chia thành 3 loại:
40 trang |
Chia sẻ: lylyngoc | Lượt xem: 1971 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Chương 5: Form-Biểu mẫu, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
CHƯƠNG 5: FORM-BIỂU MẪU
I. Giới thiệu Form
Form là giao diện chủ yếu giữa người và máy
Form thường dùng để:
Thiết kế màn hình nhập dữ liệu
Thiết kế menu
Thiết kế các màn hình tra cứu thông tin
Thiết kế các màn hình giới thiệu, trợ gíup
Yêu cầu khi thiết kế giao diện phải thuận tiện cho
người sử dụng
Mọi đối tượng xuất hiện trên Form được gọi là điều
khiển. Điều khiển được chia thành 3 loại:
Giới thiệu Form (tiếp)
Điều khiển bị buộc (Bound Control): Là điều khiển có
nguồn dữ liệu lấy từ CSDL. Nhờ điều khiển loại này ta có thể
tra cứu thông tin trong CSDL hoặc cập nhật thông tin vào
CSDL
Điều khiển không bị buộc (Unbound Control): là điều
khiển mà thông tin không gắn với nguồn dữ liệu. Thường
gặp dưới dạng tiêu đề, đường kẻ,... cũng có thể là hộp văn
bản (text box) dùng để nhập dữ liệu trong trường hợp đặc
biệt
Điều khiển tính toán được (Calculate Control): Là điều
khiển mà giá trị của nó được tính toán từ giá trị của các điều
khiển khác
Ví dụ: tongluong= Sum ([luong])
thanhtien= [soluong]*[dongia]
II. Thiết kế Form
Từ cửa sổ Database, trong phần Object
chọn Form/New/New Form
Trong cửa sổ New Form có 2 cách tạo Form
Sử dụng Form Wizard
Sử dụng Design View
Thiết kế Form (tiếp)
1). Dùng Form Wizard
Trong cửa sổ NewForrm, kích chọn Form Wizard
Xuất hiện các bước như sau:
B1: Chọn bảng làm nguồn dữ liệu/Next
B2: Chọn trường xuất hiện trên Form/Next
B3: Chọn kiểu trình bày Form/Next
B4: Chọn kiểu nền cho Form/Next
B5: Nhập tiêu đề Form/Finish
Khi tạo Form bằng Wizard, trên Form chỉ có các điều
khiển bị buộc. Muốn Form có thêm các loại điều
khiển khác nữa, ta phải kết hợp với Form Design.
Thiết kế Form (tiếp)
2). Dùng Design View:
Trong cửa sổ New Form, chọn Design View
Trong cửa sổ thiết kế Form này, quan trọng nhất là
Fieldlist và Toolbox. Để ẩn hoặc hiện 2 công cụ
này ta chọn trên menu View/Fieldlist và
View/Toolbox
Fieldlist: dùng trong trường hợp Form bị buộc vào nguồn dữ
liệu nào đó
Hộp công cụ Toolbox: dùng để thiết kế các điều khiển trên
Form
Thiết kế Form (tiếp)
3). Các thành phần trên Toolbox:
Label: nhãn
Text box: hộp văn bản
Option Group: nhóm lựa chọn
Toggle Button: nút bật tắt
Option Button: nút lựa chọn
Check box: hộp kiểm tra
ComBo Box: Hộp combo
List Box: hộp thiết kế
Command Button: nút lệnh
Thiết kế Form (tiếp)
Image: ảnh
Unbound Object Frame: khung ảnh-không bị buộc
Bound Object Frame: Khung ảnh bị buộc
Page Break: đường ngắt trang-khi in
Tab Control: tab
SubFrom: Form con
Line: đường thẳng
Rectangle: khung chữ nhật
More Controls: Các điều khiển hoạt động khác
III. Thiết kế các điều khiển trên Form
1. Vị trí của các điều khiển:
Khi thiết kế các điều khiển, ta quan tâm đến vị trí của
nó trên form
Thiết kế các điều khiển trên Form (tiếp)
Page header/Page footer: tiêu đề đầu và cuối
mỗi trang
Form header: dùng để chứa các tiêu đề như tên
Form, tên trường
Form footer: dùng để chứa các nút lệnh thao
tác trên bản ghi hoặc các dòng tổng cộng
Detail: phần quan trọng nhất của Form. Với
những Form có dữ liệu thì đây là phần lặp lại với
mỗi bản ghi. Muốn dữ liệu được hiển thị như
phiếu nhập dữ liệu thì dàn dọc các điều khiển.
Muốn dữ liệu hiển thị dưới dạng bảng thì dàn
ngang các điều khiển trên Detail
Thiết kế các điều khiển trên Form (tiếp)
2. Căn chỉnh các điều khiển
Có thể sao chép, cắt, dán, xóa các điều khiển (chỉ với 1 số loại nào
đó)
Đánh dấu các điều khiển:
Đánh dấu theo cột
Đánh dấu theo hàng
Đánh dấu theo khung
Đánh dấu các điều khiển rời rạc
Căn chỉnh các điều khiển: Chọn mục Format
Align: gióng đều
Vertical Spacing: khoảng cách dòng giữa các điều khiển
Horizotal Spacecing: khoảng cách cột giữa các điều khiển
Size: làm cho các điều khiển có cùng độ cao
Thiết kế các điều khiển trên Form (tiếp)
3. Điều khiển hộp văn bản (TextBox)
Hộp văn bản là điều khiển quan trọng nhất trên
Form. Có thể thuộc cả 3 loại: bị buộc, không bị buộc
và tính toán được.
Nếu là không bị buộc
Thường dùng để nhập dữ liệu.
Cách tạo: kéo từ toolbox vào Form
Nếu là bị buộc
Thường dùng để hiển thị dữ liệu của bảng.
Cách tạo: Kéo từ Fieldlist vào Form
Thiết kế các điều khiển trên Form (tiếp)
Nếu là điều khiển tính toán:
Thường dùng để tính toán thông qua các điều khiển khác.
Cách tạo:
Tạo 1 điều khiển không bị buộc.
Sau đó đưa các biểu thức vào
Thiết kế các điều khiển trên Form (tiếp)
4. Nhãn (Label)
Dùng làm tiêu đề, chú giải,…
Chủ yếu quan tâm đến hình thức trình bày trên nhãn:
font, màu sắc,…
Thiết kế các điều khiển trên Form (tiếp)
5. Hộp liệt kê (List Box) và Combo (Combo Box)
Khi muốn chọn 1 trong nhiều giá trị để nhập vào trường
(trên 5 giá trị) ta dùng List box hoặc Combo box
Combo box: thường được dùng nhiều trên màn hình nhập
dữ liệu, tìm kiếm
List box: thường được dùng trên màn hình hiển thị, tra cứu
Có thể thêm các giá trị khác (không có trong danh sách)
vào hộp Combo box và không thể thêm 1 giá trị mới vào
List box
Có 2 cách tạo List box/Combo box:
Thiết kế các điều khiển trên Form (tiếp)
Dùng Wizard:
Bật Control Wizard
Chọn List box/Combo box trên Toolbox
Kéo vào Form, Wizard khởi động
Chọn nguồn dữ liệu: lấy từ bảng hay danh sách giá trị
Chọn bảng hoặc danh sách giá trị nguồn
Chọn các trường hiện trong hộp
Quyết định có hiện trường khoá hay không
Chọn trường nhận dữ liệu (Form phải có nguồn dữ liệu.
Trường nhận dữ liệu là 1 trong các trường của bảng
hoặc truy vấn nguồn dữ liệu)
Thiết kế các điều khiển trên Form (tiếp)
Không dùng Wizard
Tắt Control Wizard
Chọn biểu tượng List box/Combo box kéo vào Form
Mở thuộc tính của List box/Combo box, xác định các
thuộc tính sau:
Row Source Type: Chọn Table/Query hoặc Value List
Row Source: Tên bảng hoặc Query hoặc danh sách giá trị
phân cách nhau bằng dấu ;. Cũng có thể là 1 lệnh SQL
Bound Column: cột cho giá trị
Column Count: Số các cột sẽ hiển thị dữ liệu trong hộp
Limit to list: Dùng riêng cho Combo box. Khi thêm giá trị
vào, giá trị này sẽ được cập nhật vào nguồn nếu thuộc
tính này chọn là No.
Thiết kế các điều khiển trên Form (tiếp)
6. Nút lệnh (Command Button)
Khi ta kích hoạt nút lệnh, HQTCSDL sẽ thực hiện 1
công việc. Công việc đó có thể đơn giản là mở 1
Form, cũng có thể là thực hiện tính điểm TB của SV
của trường ĐH
Để tạo nút lệnh ta có thể dùng Wizard hoặc lập trình
Dùng Wizard:
Bật Control Wizard
Chọn lĩnh vực của nút lệnh
Chọn đối tượng và tham số của hành động
Chọn hình thức trình bày của nút lệnh
Thiết kế các điều khiển trên Form (tiếp)
Không dùng Wizard:
Tắt Control Wizard
Chọn nút lệnh, đưa vào Form
Lập trình xử lý sự kiện nút lệnh
Thiết kế các điều khiển trên Form (tiếp)
7. Thuộc tính của Form:
Kích phải chuột / Chọn Properties, xuất hiện hộp thoại
Properties chứa các khai báo thuộc tính Form
a). Về hình thức trình bày
Default View: dạng hiển thị ngầm định của Form
Scroll bars: các thanh cuộn để chuyển điều khiển lên
xuống
Navigation Button: các nút để dịch chuyển bản ghi
Dividing Lines: Đường phân chia các bộ phận của Form
Picture: hình ảnh trên toàn Form
MinMax Buttons: Nút cho phép thu nhỏ, phóng to kích
cỡ Form
Thuộc tính của Form (tiếp)
b). Về dữ liệu trên Form
Records Source: tên truy vấn, bảng nguồn dữ liệu hoặc
văn bản SQL của nguồn dữ liệu
Chú ý: Khi thiết lập nguồn bằng SQL thì mọi trường xuất
hiện trên cửa sổ Design của Form phải xuất hiện trên
SQL (mặc dù là các trương đó có được bằng cách kéo
chuột)
Allow Filter: cho phép lọc dữ liệu hiện trên Form
Allow Deletion: cho phép xoá các bản ghi trên Form
Allow Edits: cho phép chỉnh sửa dữ liệu trên Form
Allow Additions: cho phép bổ sung bản ghi trên Form
Thuộc tính của Form (tiếp)
c). Các thuộc tính khác
Popup: Form được mở trên các Form khác
Modal: Không thể kích hoạt bất cứ vị trí
nào ngoài phạm vi Form
Menu bar: menu hiện khi mở Form
Short cut menu: menu hiện khi nhấn chuột
phải
Thuộc tính của Form (tiếp)
Ví dụ:tạo form để xem và cập nhật thông tin cho
bảng PHONG. Form được phép thêm, sửa, không
được xoá
Có thể làm như sau:
Thuộc tính của Form (tiếp)
Từ cửa sổ Database, trong mục Object chọn Form/ Create
form in Design view. Cửa sổ thiết kế xuất hiện.
Từ cửa sổ thiết kế form, kích phải chuột/Properties. chọn nguồn
dữ liệu của form là bảng PHONG.
Đặt thông số cho các thuộc tính:
Allow Deletion: No
Allow Edits: Yes
Allow Additions: Yes
Thiết kế các điều khiển trên form như sau:
Kéo rê các trường cần hiển thị trên form (các trường này lấy
từ nguồn dữ liệu của form – Field List) vào cửa sổ thiết kế
Hiệu chỉnh lại các nhãn (Lables) trên form như sau:
Thuộc tính của Form (tiếp)
IV. Form chính-phụ
1. Giới thiệu
Dùng để nhập dữ liệu đồng thời vào nhiều bảng.
Form chính - phụ đặc biệt có hiệu quả khi ta muốn hiển
thị dữ liệu trong các bảng có quan hệ 1:n.
Form chính hiển thị dữ liệu trong bảng có quan hệ 1,
Form phụ hiển thị dữ liệu trong bảng có quan hệ n.
Khi di chuyển sang một bản ghi mới trong Form chính thì form
phụ sẽ hiển thị một tập hợp các bản ghi nối kết tới bản ghi mới
trong form chính.
Khi tạo Form phụ, ta có thể thiết kế để nó hiển thị dưới
dạng bảng tính, Form đơn, biểu đồ,…
Một Form chính có thể có nhiều Form phụ. Chỉ có yêu
cầu là phải có ít nhất một trường chung cho từng Form
phụ với Form chính.
Form chính-phụ (tiếp)
2. Cách tạo form chính – phụ:
a.Dùng Wizard
Từ cửa sổ Database, trong mục Object, kích chọn
Form
Hộp thoại New Form xuất hiện, kích đúp Form
Wizard xuất hiện các bước của Form Wizard
Bước 1:
chọn bảng hoặc truy vấn nguồn của Form chính
(bảng ở đầu 1 của quan hệ 1:n)
Kích chọn tên trường xuất hiện trong Form chính
Form chính-phụ (tiếp)
Bước 2: Vẫn trong hộp thoại trên,
chọn bảng hoặc truy vấn nguồn của Form phụ
(bảng ở đầu n của quan hệ 1:n)
Kích chọn tên trường xuất hiện trong Form phụ
Kích Next,
Bước 3: chọn Form With subform(s)
Tiếp theo là các hộp thoại hướng dẫn của
Wizard. Khi ta kích Finish, Access sẽ tạo ra 2
Form, một Form chính và một Form phụ bên trong
Form chính.
Form chính-phụ (tiếp)
b. Không dùng Wizard:
Tạo form chính.
Tạo form phụ một cách độc lập.
Trong cửa sổ thiết kế form phụ, xây dựng
điều kiện kết nối 2 form.
Mở cửa sổ thiết kế form chính đồng thời
với cửa sổ Database. Kéo form phụ vào
form chính rồi thả.
Form chính-phụ (tiếp)
c. Làm quen với cách viết:
[loại đối tượng]![tên đối tượng]![trường liên kết]
Ví dụ: Biểu thức kết nối 2 Form:
[FORMS]![]![]
Form chính-phụ (tiếp)
d. Ví dụ: Tạo một form chính “Danh sách phòng”, mỗi phòng tương
ứng với một danh sách nhân viên trong form phụ “Danh sách nhân
viên”.
Bước 1: Tạo form chính CHINH với tiêu đề “danh sách
phòng”
Dùng Design View
Chọn nguồn dữ liệu là bảng PHONG
Ghi lại thiết kế form CHINH
Bước 2: Tạo form phụ PHU với tiêu đề “danh sách nhân
viên”
Dùng Design View
Chọn nguồn dữ liệu là văn bản SQL đưa ra các n.v thỏa
đk kết nối.
Thiết lập kết nối với form CHINH thông qua MAPHONG
tại Criteria
Form chính-phụ (tiếp)
Đặt Defaul View là Datasheet (nếu muốn Form phụ hiển thị
dưới dạng bảng)
Ghi lại thiết kế form PHU
Bước 3:
Mở cửa sổ thiết kế của form CHINH và cửa sổ Database
Kéo form PHU thả vào vị trí muốn đặt trong form CHINH
Ghi lại tất cả thiết kế này.
Form chính-phụ (tiếp)
Form chính-phụ (tiếp)
Kết quả như sau:
Form chính-phụ (tiếp)
Ví dụ 2: Tạo Form chính –phụ đưa ra
danh sách nhân viên theo ngoại ngữ đã
học
V. Dùng Form chính-phụ để tìm kiếm
Form chính-phụ được dùng để tìm kiếm thông tin.
Nó thực hiện như một Parameter Query.
Thông thường, điều kiện tìm kiếm được nhập vào
một textbox trên form chính.
Sau khi Enter, thì nó sẽ đưa ra thông tin cần thiết,
thể hiện trên form phụ.
Textbox trên form chính là loại không bị buộc, nó chỉ
dùng để nhập điều kiện tìm kiếm.
Như vậy, phải có ràng buộc giữa form phụ và textbox
này.
Dùng Form chính-phụ để tìm kiếm(tiếp)
Ví dụ 1: Thiết kế form chính-phụ để tìm kiếm
các nhân viên theo tên phòng.
Khi chạy Form, trên Form chính chứa 1 text box
để nhận tên phòng cần tìm. Trên Form phụ
sẽ xuất hiện danh sách nhân viên của phòng
vừa nhập tên.
Bước1: Thiết kế form chính CHINH1 không có
nguồn dữ liệu. Chứa 1 textbox [TEXT i] để
nhập tên phòng cần tìm.
Dùng Form chính-phụ để tìm kiếm(tiếp)
Bước 2: Thiết kế form PHU1
- Nguồn dữ liệu là văn bản SQL chứa thông
tin về các nhân viên và tên phòng tương
ứng.
- Thiết lập điều kiện liên kết với form chính:
TENPHONG=[FORMS]![CHINH1]![TEXT i]
Dùng Form chính-phụ để tìm kiếm(tiếp)
Bước 3:
Mở cửa sổ thiết kế form CHINH1 đồng thời
với cửa sổ Database. Kéo form PHU1 thả
vào form CHINH1.
Bước 4:
Trong trang Properties của form PHU1.
thiết lập điều kiện liên kết ở thuộc tính:
Link Child Field và Link Master Field
cho phù hợp
Dùng Form chính-phụ để tìm kiếm(tiếp)
Ví dụ 2:
Tạo form chính –phụ để tìm kiếm thông tin về các
nhân viên học một ngoại ngữ nào đó (tên ngoại ngữ
nhập vào 1 textbox)