intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài 2 : Sử dụng Common Dialog

Chia sẻ: Vu Linh | Ngày: | Loại File: RTF | Số trang:8

407
lượt xem
24
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

I - Giới thiệu : Lần này Only sẻ hướng dẫn các bạn cách sử dụng Common Dialog, cái này thì các bạn chắc ai củng biết nhưng Only vẫn đưa lên

Chủ đề:
Lưu

Nội dung Text: Bài 2 : Sử dụng Common Dialog

  1. Chương IV : Cùng thực hành Bài 2 : Sử dụng Common Dialog Lần này Only sẻ hướng dẫn các bạn cách sử dụng Common Dialog, cái này thì các bạn chắc ai củng biết nhưng Only vẫn đưa lên vì cho trọn bài và cho các bạn khác mới học .^^. I - Giới thiệu : 1 - Hình dung & Định ngĩa : - Bạn thường sử dụng Microsoft Word để soạn thảo văn bản, bạn thường gặp các thao tác như : Open, Save. Khi bạn đó bạn sẻ gặp một hộp thoại, hộp thoại đó được gọi là Dialog, tuy nhiên Dialog có nhiều loại, vì thế cái control kia có tên Common Dialog. - Dialog (Giai thoại) : Nó là các hộp thoại giúp người dùng giao tiếp với chương trình qua tập tin, màu sắc và phông chữ vv... 2 - Phân loại : Dialog được chia làm các loại sau : - Open Dialog : Giai thoại mở file. - Save Dialog : Giai thoại lưu file. - Color Dialog : Giai thoại chọn màu. - Font Dialog : Giai thoại chọn phông chử. - Folder Browser Dialog : Giai thoại tìm thư mục. Tuy nhiều thế như chúng ta chỉ học 3 loại đó là Open Dialog, Save Dialog và Folder Browser Dialog. Ảnh minh họa : 1 - Đây là Open Dialog : 2 - Đây là Save Dialog :
  2. 3 - Đây là Folder Browser Dialog : II - Cách sữ dụng :
  3. I - VB6 A - Thiết kế : Cách đưa Common Dialog vào chương trình : Chọn menu Peoject\Components... hoặc nhấn tổ hợp phím Ctrl+T (Xem hình giưới) Tiếp theo là hộp thoại cùng tên hiện lên : Tìm và chọn Microsoft Common Dialog Control 6.0 (SP3)
  4. Sau khi chọn xong bạn kéo và thã nó vào fom như sau : Giờ chúng ta sẻ viết một chương trình cơ bản về Dialog nhé : Bạn thiết kế trên form có 3 nút như sau : 1 - Open : CmdOpen 2 - Save : CmdSave 3 - Folder Browser : CmdFolderBrowser Ảnh minh họa : B : Viết mã : 1 - Cho CmdOpen : Private Sub CmdOpen_Click() On Error Goto Loi 'Tùy chỉnh giai thoại With DlgDialog
  5. .DialogTitle = "Mo file" 'Tiêu đề của Dialog .CancelError = True 'Phát sinh lỗi khi người dùng bỏ chọn 'Tùy chọn các loại file được lọc (Filter) .Filter = "Text Only(*.txt)|*.txt|All files|*.*" 'Mở giai thoại .ShowOpen 'Hiện kết quả file đang chọn MsgBox .FileName End With Loi: 'Nếu người dùng nhấn Cancel hay Close thì 'Bỏ qua End Sub 2 - Cho CmdSave : Private Sub CmdSave_Click() On Error Goto Loi 'Tùy chỉnh giai thoại With DlgDialog .DialogTitle = "Mo file" 'Tiêu đề của Dialog .CancelError = True 'Phát sinh lỗi khi người dùng bỏ chọn 'Tùy chọn các loại file được lọc (Filter) .Filter = "Text Only(*.txt)|*.txt|All files|*.*" 'Mở giai thoại .ShowSave 'Hiện kết quả file đang chọn MsgBox .FileName End With Loi: 'Nếu người dùng nhấn Cancel hay Close thì 'Bỏ qua End Sub 3 - Cho CmdFolderBrowser : VB6 không hổ trợ control cho Folder Browser nhưng ta có thể hoàn toàn làm được bằng API : Khai báo thư viện : 'Khai báo kiểu cho BrowseInfo Private Type BrowseInfo hWndOwner As Long pIDLRoot As Long pszDisplayName As Long lpszTitle As Long ulFlags As Long lpfnCallback As Long lParam As Long iImage As Long End Type 'Khai báo các hằng cần thiết Const BIF_RETURNONLYFSDIRS = 1 Const MAX_PATH = 260 'Khai báo thư viện Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long) Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long,
  6. ByVal lpBuffer As String) As Long Sử dụng : Private Sub CmdFolderBrowser_Click() Dim iNull As Integer, lpIDList As Long, lResult As Long Dim sPath As String, udtBI As BrowseInfo 'Tuy chinh giai thoai With udtBI .hWndOwner = Me.hWnd ' Tiêu đề của giai thoại .lpszTitle = lstrcat("Chon thu muc", "") .ulFlags = BIF_RETURNONLYFSDIRS End With lpIDList = SHBrowseForFolder(udtBI) 'Xac dinh duong dan dang chon If lpIDList Then sPath = String$(MAX_PATH, 0) SHGetPathFromIDList lpIDList, sPath CoTaskMemFree lpIDList iNull = InStr(sPath, vbNullChar) If iNull Then sPath = Left$(sPath, iNull - 1) End If End If 'Thong bao duong dan MsgBox sPath End Sub C : Biên dịch và chạy thữ : Giờ các bạn thữ biên dịch và chạy thữ xem sao nhé .^^. II - VB.NET A - Thiết kế : Thiết kế giống như trong VB6 Thêm Dialog trong VB.NET : VB.NET thì đã có sẳn các bạn có thể lấy nó ra theo hình sau : Các bạn sẻ đặt tên lần lượt như sau : 1 - DlgOpen 2 - DlgSave 3 - DlgFolderBrowser và thêm vào 3 button như VB6 có tên lần lượt : btnOpen, btnSave, btnFolderBrowser B : Viết mã : 1 - btnOpen : Private Sub BtnOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnOpen.Click 'Tùy chỉnh giai thoại
  7. With DlgOpen .Title = "Mo file" 'Tiêu đề .Filter = "Text only(*.txt)|*.txt|All file(*.*)|*.*" 'Các loại file để hiển thị 'Nếu người dùng nhấn Ok thì If .ShowDialog = Windows.Forms.DialogResult.OK Then MessageBox.Show(.FileName) 'Thông báo file được chọn End If End With End Sub 2 - btnSave : Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click 'Tùy chỉnh giai thoại With DlgSave .Title = "Luu file" 'Tiêu đề .Filter = "Text only(*.txt)|*.txt|All file(*.*)|*.*" 'Các loại file để hiển thị 'Nếu người dùng nhấn Ok thì If .ShowDialog = Windows.Forms.DialogResult.OK Then MessageBox.Show(.FileName) 'Thông báo file được chọn End If End With End Sub 3 - btnFolderBrowser : Private Sub btnFolderBrowser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFolderBrowser.Click 'Tùy chỉnh giai thoài With DlgFolderBrowser .Description = "Chon thu muc" 'Nhản cho giai thoại 'Nếu người dùng nhấn Ok thì If .ShowDialog = Windows.Forms.DialogResult.OK Then MessageBox.Show(.SelectedPath) 'Thông báo thư mục đang chọn End If End With End Sub C : Biên dịch và chạy thữ : Giờ các bạn thữ biên dịch và chạy thữ xem sao nhé .^^. III - C# A - Thiết kế : Giống như VB.NET B : Viết mã : 1 - btnOpen : private void btnOpen_Click(object sender, EventArgs e) { dlgOpen.Title = "mo file"; //Tiêu đề giai thoại dlgOpen.Filter = "text file(*.txt)|*.txt|all files(*.*)| *.*"; //các loại file để mở //Nếu người dùng nhấn Ok thì if(dlgOpen.ShowDialog().Equals (DialogResult.OK )) { MessageBox.Show(dlgOpen.FileName); //Thông báo file được chọn }
  8. } 2 - btnSave : private void btnSave_Click(object sender, EventArgs e) { dlgSave.Title = "mo file"; //Tiêu đề giai thoại dlgSave.Filter = "text file(*.txt)|*.txt|all files(*.*)| *.*"; //các loại file để mở //Nếu người dùng nhấn Ok thì if (dlgSave.ShowDialog().Equals(DialogResult.OK)) { MessageBox.Show(dlgSave.FileName); //Thông báo file được chọn } } 3 - btnFolderBrowser : private void btnFolderBrowser_Click(object sender, EventArgs e) { dlgFolderBrowser.Description = "chon thu muc"; //nhản giai thoại //Nếu người dùng nhấn Ok thì if (dlgFolderBrowser.ShowDialog() == DialogResult.OK) { MessageBox.Show(dlgFolderBrowser.SelectedPath ); //Thông báo thư mục đang chọn } } C : Biên dịch và chạy thữ : Giờ các bạn thữ biên dịch và chạy thữ xem sao nhé .^^.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2