Skip to content Skip to navigation

OpenStax-CNX

You are here: Home » Content » Tập tin

Navigation

Lenses

What is a lens?

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

This content is ...

Affiliated with (What does "Affiliated with" mean?)

This content is either by members of the organizations listed or about topics related to the organizations listed. Click each link to see a list of all content affiliated with the organization.
  • VOCW

    This module is included inLens: Vietnam OpenCourseWare's Lens
    By: Vietnam OpenCourseWare

    Click the "VOCW" link to see all content affiliated with them.

Recently Viewed

This feature requires Javascript to be enabled.
 

Tập tin

Module by: KS. Lâm Hoài Bảo. E-mail the author

Summary: Mục tiêu: Chương này nhằm mục đích rèn luyện sinh viên các kỹ năng thao tác với hệ thống tập tin của Windows trong VB. Bên cạnh đó, việc hệ thống lại các kiến thức của các chương trước cũng là một mục tiêu quan trọng của chương.

Học xong chương này, sinh viên phải nắm được các vấn đề sau:

- Sử dụng mô hình hệ thống tập tin.

- Cách thức truy cập tập tin tuần tự.

- Cách thức truy cập tập tin truy xuất ngẫu nhiên.

Kiến thức có liên quan:

Giáo trình Visual Basic, Chương 7.

Tài liệu tham khảo:

- Visual Basic 6 Certification Exam Guide - Chapter 7, Page 191; Chapter 13, Page 377 - Dan Mezick & Scot Hillier - McGraw-Hill - 1998.

BÀI TẬP HƯỚNG DẪN

Bài tập 3-1:

XUẤT NHẬP TẬP TIN VĂN BẢN

Bước 1: Tạo Project mới tên Bt3-1 trong thư mục Basic\Bt3-1. Tạo giao diện có dạng sau:

Hình 1
Hình 1 (graphics1.png)

Hình III.1: Tập tin văn bản

Item 1 – TextBox

NameText1

Height2220

Width6630

MultilineTrue

ScrollBarsBoth

Item 2 – CommandButton

NameCommand1

CaptionNew

Item 3 – CommandButton

NameCommand2

CaptionOpen

Item 4 – CommandButton

NameCommand3

CaptionSave

Item 5 – CommandButton

NameCommand4

CaptionPrint

Item 6 – CommandButton

NameCommand5

CaptionCopy

Bước 2: Nút New có nhiệm vụ xóa văn bản trong TextBox để ta có thể khởi tạo một tài liệu mới. Do đó, trong hàm sự kiện Command1_Click, thêm vào đoạn mã:

Text1.Text = “”

GHI CHUỖI LÊN TẬP TIN

Bước 3: Ở đây ta nhập vào đoạn văn bản rồi ghi lên tập tin. Để đơn giản ta đọc và ghi từ một tập tin văn bản duy nhất tên là vidu.txt nằm trong thư mục của dự án của mình (ở đây là thư mục Bt5-1). Để ghi lên tập tin, trong hàm sự kiện Command3_Click, thêm đoạn mã sau:

' Ghi len tap tin

Open App.Path & "\vidu.txt" For Output As #1

' Ghi du lieu

Print #1, Text1.Text

' Dong tap tin

Close #1

MsgBox "Van ban da duoc luu"

Bước 4: Việc thao tác trên tập tin được thực hiện nhờ thẻ tập tin. Thực chất đây là một số nguyên chỉ bởi VB một liên kết đến một tập tin xác định để xuất hay nhập vào tập tin đó. Ở đây là sử dụng #1. Câu lệnh Print sử dụng thẻ tập tin để ghi văn bản lên tập tin. Khi việc ghi hoàn tất, thẻ tập tin được đóng lại nhờ câu lệnh Close.

Bước 5: Chạy ứng dụng, nhấp nút Command3. Nếu chương trình thực thi tốt, ta có thể mở tập tin vidu.txt trong Notepad xem.

ĐỌC TỪ TẬP TIN VĂN BẢN

Bước 6: Đọc tập tin từ đĩa tương tự như ghi tập tin. Chèn đoạn mã sau trong hàm xử lý sự kiện Command2_Click

Text1.Text = ""

Close #1

' Mo tap tin

Open App.Path & "\vidu.txt" For Input As #1

Dim filetext As String ' Bien chuoi luu van ban

Do While Not EOF(1)

Input #1, filetext ' Doc tung dong

' Hien thi trong TextBox, chu y them vao ky tu xuong dong

Text1.Text = Text1.Text & filetext & vbCrLf

Loop

Close #1

Bước 7: Chạy ứng dụng. Nhấp nút Command2 để đọc từ tập tin vidu.txt vào TextBox. Ở đây ta có định nghĩa một biến trong lệnh

Dim filetext as String

Ở đây, mỗi lần ta đọc từng dòng trong tập tin vidu.txt; mỗi lần đọc như vậy ta lưu vào biến kiểu chuỗi filetext; sau đó ta nối chuỗi filetext vào sau chuỗi Text1.Text (hiển thị trong TextBox). Quá trình trên được thực hiện liên tục đến khi đọc hết nội dung tập tin nhờ vào vòng lặp:

Do While Not EOF(1)

EOF là một hàm được định nghĩa sẵn trong VB, hàm này có nhiệm vụ kiểm tra xem có đạt đến cuối tập tin hay không? Nếu nội dung tập tin vẫn chưa được đọc hết, quá trình đọc vẫn tiếp tục đến khi EOF là True.

Input #1

Đọc một chuỗi từ tập tin cho đến khi gặp ký tự xuống dòng. Ký tự xuống dòng này được bỏ qua trong lệnh Input; do đó nếu muốn hiển thị thành nhiều dòng trên TextBox, ta phải thêm vào ký tự xuống dòng cho mỗi dòng ta đọc được từ tập tin sau đó ta mới hiển thị trên TextBox. Hằng số vbCrLf là sự liên kết 2 ký tự xuống dòng và về đầu dòng.

IN VĂN BẢN RA MÁY IN

Bước 8: Nếu máy in được nối vào, máy in phải được kích hoạt. Ta có thể kiểm tra chúng bằng cách in thử vài dòng văn bản trong Word hay trong Notepad.

Bước 9: Đối tượng Printer sẽ chỉ đến máy in mặc định. Trong hàm xử lý sự kiện Command4_Click chèn thêm đoạn mã:

Printer.Print Text1.Text

Câu lệnh này dùng để in nội dung trong TextBox ra máy in. Tuy nhiên nội dung của TextBox chỉ được in khi chương trình chấm dứt. Để in ngay lập tức, ta cần phải thêm dòng sau:

Printer.EndDoc

CHÉP DỮ LIỆU VÀO CLIPBOARD

Bước 10: Trong nhiều ứng dụng, nhiều khi ta cần sử dụng dữ liệu qua lại với nhau. Chẳng hạn, người dùng có thể sử dụng dữ liệu được hiển thị trên form hiển thị của chương trình chúng ta sang chương trình xử lý văn bản Microsoft Word. Lúc này, một cách hiệu quả nhất là sử dụng đối tượng Clipboard, đối tượng này cho phép đọc và ghi lên Windows Clipboard từ chương trình ứng dụng:

Thêm đoạn mã sau vào hàm sự kiện Command5_Click:

Clipboard.Clear

Clipboard.SetText Text1.Text

Đóng cửa số mã lệnh lại và chạy chương trình ứng dụng. Nhập một đoạn văn bản, sau đó nhấp Command5. Từ Microsoft Word, sử dụng menu Edit\Paste để lấy dữ liệu từ Clipboard hiển thị.

Bài tập 3-2

THAO TÁC VỚI RESOURCE FILE

Mục tiêu: Giúp làm quen với tập tin resource của VB, nhất là củng cố các thao tác trên tập tin.

Bước 1: Tạo thư mục Basic\Bt3-2. Tạo một dự án mới trong thư mục này.

Bước 2: Tạo giao diện như hình sau:

Hình 2
Hình 2 (.png)
51234679108

Hình III.2: Tập tin resource

Trong đó:

Item 1: Caption: Thong tin nguoi su dung

BorderStyle: 3-Fixed Dialog

StartUpPosition: 2-Center Screen

Item 2: Label

Name: lblHelp

Index: 0

Item 3: Label

Name: lblHelp

Index: 1

Item 4: Label

Name: lblHelp

Index: 2

Item 5: TextBox

Name: txtHelp

Index: 0

Item 6: TextBox

Name: txtHelp

Index: 1

Item 7: TextBox

Name: txtHelp

Index: 2

Item 8: CommandButton

Name: cmdHelp

Index: 0

Item 9: CommandButton

Name: cmdHelp

Index: 1

Item 10: CommandButton

Name: cmdHelp

Index: 2

Bước 3: Ta nhận thấy các điều khiển có cùng một tên hiển thị (Thong tin). Mục tiêu của ta là sử dụng tập tin resource (tài nguyên) để thay đổi tên hiển thị trên các điều khiển. Để tạo tập tin tài nguyên, ta vào mục ADD-IN\ADD-IN MANAGER trên menu của VB. Trong các mục của ADD-IN MANAGER nhấp đúp vào resource editor và đóng mục ADD-IN MANAGER lại.

Bước 4: Chọn Tools\Resource Editor trên menu. Mở String Table Editor bằng cách nhấp chuột lên biểu tượng abc của Resource Editor. Cửa sổ soạn thảo cho tập tin tài nguyên sẽ mở ra. Ta nhập các hàng như sau:

Bảng 1
ID RESOURCE STRING ID RESOURCE STRING
1 Ten 7 So dt
2 Ho 8 So CMND
3 Ma nv 9 T. trang hn
4 Huy bo 10 Huy bo
5 Vo hieu hoa 11 Ve truoc
6 Ke 12 Hoan tat

Bước 5: Lưu tập tin tài nguyên lại.

Bước 6: Mở cửa sổ soạn thảo mã lệnh. Tạo kiểu do người dùng định nghĩa để lưu dữ liệu cần nhập vào. Thêm đoạn mã sau:

Private Type yeucau

ho As String

ten As String

manv As String

sodt As String

socmnd As String

tinhtranghn As String

End Type

Bước 7: Ta thêm 2 biến nữa; một biến lưu thông tin về người sử dụng (theo kiểu ở trên), một biến lưu thứ tự các bước mà người sử dụng đã nhập thông tin của mình vào.

Private chisobuoc As Integer

Private cacyeucau As yeucau

Bước 8: Trong chương trình này, người sử dụng phải nhập thông tin của mình vào thông qua các bước nhập, trong đó các điều khiển được sử dụng như một mảng các điều khiển. Để tận dụng chúng ta cần khai báo các hằng số để biết hiện thời người dùng đang ở bước thứ mấy của quá trình nhập thông tin cũng như biết được mình đã nhấp vào nút nhấn nào trong quá trình trên. Do đó, ta thêm đoạn khai báo sau:

' cac hang so

Private Enum buoc

buoc1 = 1

buoc2 = 2

buoc3 = 3

End Enum

Private Enum nhannut

nuttrai

nutgiua

nutphai

End Enum

Bước 9: Chương trình này thể hiện trên một form duy nhất và sử dụng mảng các điều khiển để tạo các bước để người dùng nhập thông tin vào. Do đó ta sử dụng tập tin tài nguyên để hiển thị các tên của điều khiển nhằm hiển thị cho chính xác. Vì thế ta cần có một hàm (thủ tục) để cập nhật thông tin nhập vào dựa vào các bước của người dung khi nhập thông tin vào. Vào Tools\Add Procedure để thêm thủ tục sau:

Public Sub Hienthi()

Dim i As Integer

' Kiem tra cac buoc

Debug.Assert chisobuoc = 1 Or chisobuoc = 2

For i = 0 To 2

‘ Nhan

lblHelp(i).Caption = LoadResString((chisobuoc - 1) * 6 + (i + 1))

' Nut

cmdHelp(i).Caption = LoadResString((chisobuoc - 1) * 6 + (i + 4))

If UCase(cmdHelp(i).Caption) = "VO HIEU HOA" Then

cmdHelp(i).Visible = False

Else

cmdHelp(i).Visible = True

End If

txtHelp(i).Text = ""

Next

End Sub

Bước 10: Khi chương trình thực hiện, ta phải ở bước thứ nhất của quá trình nhập liệu size 12{ drarrow } {} Thêm đoạn mã sau trong thủ tục xử lý sự kiện Form_Load:

chisobuoc = 1

Hienthi

Bước 11: Mỗi khi có một nút nhấn được nhấp, quá trình nhập liệu chuyển sang bước kế tiếp; người sử dụng có thể đi đến bước kế tiếp hay trở về bước trước đó trong quá trình này. Vì các nút nhấn (button) là một mảng điều khiển (control array) nên chúng có cùng một sự kiện Click tác động vào gọi là cmdHelp_Click. Hàm xử lý này có tham số là một chỉ số kiểu Integer để nhận biết nút nhấn nào được nhấp. Ở đây, ta thêm đoạn mã sau trong hàm xử lý sự kiện này.

Private Sub cmdHelp_Click(Index As Integer)

Select Case chisobuoc

Case buoc1

cacyeucau.ten = txtHelp(0).Text

cacyeucau.ho = txtHelp(1).Text

cacyeucau.manv = txtHelp(2).Text

Case buoc2

cacyeucau.sodt = txtHelp(0).Text

cacyeucau.socmnd = txtHelp(1).Text

cacyeucau.tinhtranghn = txtHelp(2).Text

End Select

' Cac nut nhan

Select Case Index

Case nuttrai

' Huy bo

End

Case nutgiua

' ve truoc

chisobuoc = buoc1

Hienthi

Case nutphai

' di toi

chisobuoc = chisobuoc + 1

If chisobuoc = buoc2 Then

Hienthi

Else

Guiyeucau

End If

End Select

End Sub

Bước 12: Khi quá trình nhập thông tin kết thúc, thông tin này được lưu vào trong một tập tin văn bản, nhờ thủ tục Guiyeucau. Thêm thủ tục Guiyeucau vào nhờ mục Tools\Add Procedure và nhập đoạn mã sau:

Public Sub Guiyeucau()

On Error GoTo Guiloi

' Lay the tap tin

Dim intFile As Integer

intFile = FreeFile()

' Viet len tap tin

Open App.Path & "\yeucau.txt" For Output As #intFile

Print #1, "ho: " & cacyeucau.ho

Print #1, "ten: " & cacyeucau.ten

Print #1, "manv: " & cacyeucau.manv

Print #1, "sodt: " & cacyeucau.sodt

Print #1, "socmnd: " & cacyeucau.socmnd

Print #1, "tinhtranghn: " & cacyeucau.tinhtranghn

Close #intFile

MsgBox "Yeu cau cua ban da duoc goi di", vbOKOnly + vbInformation, _

"Goi yeu cau"

End

Exit Sub

Guiloi:

MsgBox Err.Description, vbOKOnly + vbExclamation, "Goi yeu cau"

Exit Sub

End Sub

Bước 13: Lưu và thực thi chương trình.

Bài tập 3-3

CHƯƠNG TRÌNH XỬ LÝ VĂN BẢN ĐƠN GIẢN

GIAO DIỆN ĐA TÀI LIỆU

Bước 1: Tạo một dự án lưu trong thư mục Basic\Bt3-3.

Giao diện đa tài liệu (MDI Form) gồm một cửa sổ cha chứa nhiều cửa sổ con (chẳng hạn như các chương trình Microsoft Word, Excel được tổ chức theo dạng này). Để thêm vào dự án, ta chọn mục Project\Add MDI Form từ menu của VB.

Bước 2: Ta cho Form1 trở thành một cửa sổ con của MDI Form bằng cách chọn thuộc tính MDIChild = True.

HÀM MAIN (SUB MAIN)

Bước 3: Trong chương trình ta cần điều khiển mọi thứ kể từ khi các cửa sổ con của MDI Form xuất hiện, do đó ta cần phải bắt đầu thực thi chương trình của ta từ hàm Main (Sub Main). Ta chọn mục Project\ Add Module để thêm một Modul vào dự án của mình, sau đó ta chọn Tools\Add Procedure để thêm hàm Main vào (Public Sub Main); hàm này ta dùng để bắt đầu gọi thực thi chương trình của mình. Để chọn thực thi chương trình từ hàm Main, chọn Project\Properties; chọn Start up Object là Sub Main.

Bước 4: Thêm dòng lệnh sau vào hàm Main:

MDIForm1.Show

Bước 5: Chương trình cần có một hệ thống menu để gọi thực thi. Do đó, chọn MDI Form, sau đó chọn Tools\Menu Editor để tạo menu sau:

Menu NameMenu Caption

mnuFile&File

mnuFileNew &New

mnuFileOpen&Open…

muFileSave&Save

mnuFileBar-

mnuFileExitE&xit

Bước 6: Ta xử lý sự kiện mnuFileExit_Click nhờ đoạn mã sau:

Private Sub mnuFileExit_Click()

Dim f As Form

' Thoat cac cua so con

For Each f In Forms

If TypeOf f Is Form1 Then

Unload f

Set f = Nothing

End If

Next

' Thoat cua so cha

Unload Me

End Sub

Bước 7: Để tạo ra một tài liệu trắng cho chương trình xử lý văn bản, ta cần phải có một TextBox trong Form1. Người sử dụng đánh nội dung vào TextBox, do đó ta thêm một TextBox vào Form1 với các thuộc tính sau:

MultiLine: True

ScrollBars: 2-Vertical

Ta xử lý sự kiện Form_Resize của Form1 như sau:

Private Sub Form_Resize()

Text1.Height = Me.ScaleHeight

Text1.Width = Me.ScaleWidth

Text1.Left = 0

Text1.Top = 0

End Sub

Bước 8: Mỗi lần chọn mục New trên cửa sổ chương trình ứng dụng, một khung cửa sổ trắng hiện ra để ta nhập văn bản vào. Do đó, thêm đoạn mã sau trong thủ tục xử lý sự kiện mnuFileNew_Click:

Private Sub mnuFileNew_Click()

Dim f As Form1

Static n As Integer

Set f = New Form1

f.Text1.Text = ""

n = n + 1

f.Caption = "Document " & Format(n)

f.Show

End Sub

THAO TÁC TRÊN TẬP TIN

Bước 9: Ta cần phải có hộp thoại nhằm chọn tập tin để lưu (hay mở tập tin) trong chương trình xử lý văn bản. Do đó ta cần thêm một Dialog Control vào chương trình. Đánh dấu vào mục chọn Microsoft Common Dialog Control 6.0 (SP3). Sau đó ta thêm Dialog Control từ ToolBox vào MDIForm1. Ta xử lý sự kiện mnuFileSave_Click nhờ đoạn mã sau:

Private Sub menuFileSave_Click()

Dim tenfile As String

CommonDialog1.ShowSave

tenfile = CommonDialog1.FileName

Open tenfile For Output As #1

Print #1, MDIForm1.ActiveForm.Text1.Text

Close #1

End Sub

Bước 10: Khi mục Open của menu được chọn, hộp thoại Open File được mở ra size 12{ drarrow } {} sự kiện mnuFileOpen_Click được xử lý như sau:

Private Sub mnuFileOpen_Click()

Dim tenfile As String, s As String

CommonDialog1.ShowOpen

tenfile = CommonDialog1.FileName

If UCase(Right(tenfile, 3)) <> "TXT" Then Exit Sub

Call mnuFileNew_Click

Open tenfile For Input As #1

Do Until EOF(1)

Line Input #1, s

Me.ActiveForm.Text1.Text = Me.ActiveForm.Text1.Text & s & vbCrLf

Loop

Close #1

End Sub

Bước 11: Lưu dự án và chạy chương trình. Tạo mới, lưu, mở một số tài liệu. Nhận xét kết quả.

Bài tập 3-4

THAO TÁC VỚI ĐỐI TƯỢNG WORD

Mục đích: Windows có sẵn một số đối tượng khi ta cài đặt Windows hay khi cài một số phần mềm. Bài tập này giúp ta tìm hiểu cách thức truy xuất các đối tượng có sẵn này từ Visual Basic.

THAM CHIẾU ĐỐI TƯỢNG

Bước 1: Tạo thư mục Basic\Bt3-4. Khởi động một dự án mới trong thư mục này.

Bước 2: Trong bài tập này ta có tham chiếu đến đối tượng Word của Microsoft Word; do đó ta phải có thao tác tham chiếu đến đối tượng này trong màn hình soạn thảo VB bằng cách: Chọn Project\References trên menu. Trong cửa số References, thiết lập tham chiếu đến: Microsoft Word 9.0 Object Library và Microsoft Office 9.0 Library. Sau đó đóng cửa sổ References lại.

Bước 3: Ta có thể kiểm tra các đối tượng trên có được đưa vào hay chưa nhờ thao tác: Chọn View\Object Browser.

XÂY DỰNG ỨNG DỤNG

Bước 4: Tạo giao diện chương trình có dạng sau:

Hình 3
Hình 3 (.png)
123456

Hình III.3: Thao tác với đối tượng Word

Trong đó:

1: TextBox

Name: txtWord

Multiline: True

ScrollBar: 2-Vertical

2: CommandButton

Name: cmdLuu

Caption: Lưu

3: CommandButton

Name: cmdTruoc

Caption: Trước khi in

4: CommandButton

Name: cmdCTa

Caption: Kiểm lỗi.

5: CommandButton

Name: cmdThoat

Caption: Thoát

6: CommandButton

Name: cmdGiup

Caption: Trợ giúp

Bước 5: Để sử dụng được mô hình, ta phải khai báo một số biến đối tượng của Word. Trong phần [General]\ [Declarations], khai báo những biến sau:

Public ungdung As Word.Application

Public tailieu As Word.Document

Public trogiup As Office.Assistant

Bước 6: Khi chương trình thực hiện, điều ta muốn là một tài liệu mới của Word được tạo ra để ta có thể thao tác trên chúng một cách gián tiếp thông qua chương trình VB của mình. Tạo một tài liệu Word mới tương đương với việc tạo ra một thể hiện của đối tượng Document. Vì thế, chèn đoạn mã sau vào thủ tục Form_Load để tạo ra một tài liệu Word mới từ chương trình VB.

Set ungdung = CreateObject("Word.Application")

Set tailieu = ungdung.Documents.Add

Set trogiup = ungdung.Assistant

Bước 7: Nút Lưu có nhiệm vụ ghi tất cả những gì trên TextBox vào đối tượng Word mới tạo ra. Do đó, ta xử lý sự kiện cmdLuu_Click như sau:

' Ghi tai lieu moi

tailieu.Content.Text = txtWord.Text

MsgBox "Van ban duoc luu trong Word", vbOKOnly, "Word"

Bước 8: Nút Trước khi in có nhiệm vụ hiển thị tài liệu Word giống như khi chúng được in ra giấy; vì thế sự kiện cmdTruoc_Click được xử lý như sau:

tailieu.PrintPreview

ungdung.Visible = True

ungdung.Activate

Bước 9: Nút Kiểm lỗi thực hiện thao tác kiểm lỗi chính tả cho tài liệu Word, thao tác này được xử lý trong thủ tục cmdCTa_Click:

tailieu.CheckSpelling

txtWord.Text = tailieu.Content.Text

Bước 10: Nút Thoát sẽ đóng cửa sổ chứa tài liệu Word lại. Chèn đoạn mã sau trong thủ tục cmdThoat_Click để đóng Word lại:

ungdung.Quit SaveChanges = False

Bước 11: Khi ta nhấp vào nút Trợ giúp thì cửa sổ Help của Office hiện ra. Do đó, thêm đoạn mã sau trong thủ tục cmdGiup_Click để mở cửa sổ Help của Office:

ungdung.Visible = True

ungdung.Activate

trogiup.Help

Bước 12: Lưu dự án và chạy chương trình. Nhập vài dòng văn bản vào TextBox và nhấp nút Lưu. Mỗi khi văn bản được lưu, ta nhấp nút Trước khi in để xem tài liệu trước khi. Khi văn bản được hiển thị, nhấp nút Kiểm lỗi. Sau đó thử nhấp nút Trợ giúp để xem phần giúp đỡ của Office. Cuối cùng nhấp nút Thoát để thoát khỏi Word.

BÀI TẬP TỰ LÀM

  1. Thiết kế chương trình như ứng dụng Notepad của Windows.
  • Thiết kế giao diện

Hình III.5: Giao diện Notepad

Hình 4
Hình 4 (graphics2.png)

Hình 5
Hình 5 (graphics3.png)
  • Xử lý các sự kiện
  • Mỗi khi Form thay đổi kích thước, TextBox cũng thay đổi theo cho phù hợp với Form
  • New
  • Open, Save, Save As: mở hộp thoại Common Dialog cho phép chọn tập tin để mở hay lưu. Sử dụng đối tượng FileSystemObject để thao tác với tập tin văn bản.
  • Exit
  • Font Setting: Mở ra hộp thoại chọn Font, thiết lập Font của TextBox chính là Font được chọn trong hộp thoại.
  • Xử lý mở rộng:
  • Khi người dùng đã lưu tập tin rồi, lần thứ hai bấm vào Save thì không mở hộp thoại Common Dialog nữa mà sẽ lưu với tên tập tin đã chọn trong lần Save đầu tiên.
  • Mỗi khi người dùng thay đổi nội dung của một tập tin, sau đó họ chọn Exit để đóng ứng dụng lại; một hộp thông điệp (Message Box) sẽ mở ra hỏi có lưu tập tin hay không?
  • Đại lý Minh Thành của công ty Unilever Việt Nam tại Cần Thơ cần quản lý thông tin về các mặt hàng mà đại lý nhận từ công ty. Các thông tin cần quản lý gồm: Mã mặt hàng, tên mặt hàng, đơn vị tính, giá của mặt hàng đó. Các thông tin này được mô tả như sau:

Type HangHoa

MaHang As String*5

TenHang As String*40

DVTinh As String*15

Gia As Double

End Type

Dựa vào thông tin mô tả trên, Anh (Chị) hãy:

  1. Tạo dự án mới và viết các khai báo thích hợp.
  2. Thiết kế Form chính như sau:
Hình 6
Hình 6 (graphics4.png)

Hình III.6: Giao diện chính

  1. Khi người dùng chọn mục Thoát, rồi nhấp chọn Thực hiện, chương trình chấm dứt. Viết mã lệnh để xử lý đối với trường hợp này.
  2. Khi người dùng nhấp chọn Nhập liệu, rồi Thực hiện, một Form sẽ mở ra cho phép nhập thông tin hàng hóa vào. Hãy thiết kế Form này với các chức năng như hình dưới:
Hình 7
Hình 7 (graphics5.png)

Hình III.7: Form nhập liệu

  1. Mỗi khi người dùng nhập thông tin vào các ô TextBox, rồi chọn nút nhấn Nhập, những thông tin đó sẽ được lưu lên lưới hiển thị. Khi chọn Ghi tập tin, một hộp thoại (Common Dialog) lưu tập tin hiện ra cho phép chọn đường dẫn và tên tập tin, sau đó ghi những thông tin trên lưới vào tập tin đã chọn (với cấu trúc tập tin được mô tả ở phần đầu). Nút nhấn Thoát sẽ đóng Form này lại, trở về Form chính ban đầu. Viết các đoạn xử lý thích hợp.
  2. Ở Form chính ban đầu (hình III.6), khi người dùng chọn Hiển thị thông tin hàng hóa, một hộp thoại mở tập tin (CommonDialog) hiện ra cho phép chọn tên tập tin chứa dữ liệu về hàng hóa đã được tạo ra ở câu e. Sau đó đọc dữ liệu từ tập tin rồi hiển thi trên lưới:
Hình 8
Hình 8 (graphics6.png)

Hình III.8: Đọc từ tập tin

Hãy thiết kế Form và viết mã lệnh xử lý các sự kiện thích hợp.

CƠ SỞ DỮ LIỆU SỬ DỤNG

Các chương kế tiếp là phần lập trình Visual Basic truy xuất cơ sở dữ liệu (CSDL). Trong các bài tập trên CSDL, ta có sử dụng CSDL HangHoa.MDB của Access. Cơ sở dữ liệu này đã có sẵn, sinh viên có thể liên hệ cán bộ giảng dạy để lấy về. Thông tin các bảng (Table) của CSDL này như sau:

TLOAIHANG(MaLoai, TenLoai): Mỗi loại hàng hóa có mã loại và tên loại.

THANGHOA(MaHang, TenHang, DVTinh, MaLoai). Mỗi hàng hóa có mã hàng hóa, tên hàng hóa, đơn vị tính và chỉ thuộc 1 loại hàng hóa nào đó.

TNHANVIEN(MaNV, HoTen, Phai, Diachi, Ngaysinh, Luong, Ghichu): Mỗi nhân viên có mã nhân viên, họ tên, phái, địa chỉ nhân viên, ngày sinh, lương của nhân viên đó là bao nhiêu và có thể có một vài ghi chú về nhân viên đó.

TPHATSINH(SOTT, Ngay, Loai, Fieu, Hten, Lydo, MaHang, Solg, Dgia, MaNV): Mỗi một phát sinh được ghi nhận thành một chứng từ có SoTT, ngày phát sinh chứng từ, loại phát sinh là nhập (hay xuất)…, số phiếu, họ tên khách hàng, lý do phát sinh ứng với hàng hóa nào (mã hàng), số lượng và đơn giá là bao nhiêu, nhân viên phụ trách phát sinh là gì (MaNV).

Hình 9
Hình 9 (graphics7.png)
Bảng quan hệ giữa các Table này như sau:

Các mối quan hệ của CSDL HangHoa.mdb

Content actions

Download module as:

Add module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks