Bài giảng Lập trình ứng dụng Windows Form in VB.NET 2005 - Buổi 3: DialogBox và Printing
MessageBox.Show MessageBox.Show; ; DialogResult DialogResult
MsgBox;
InputBox
DialogResult
ColorDialog,
FontDialog,
OpenFiletDialog
FolderBrowserDialog
sageBox.Show; DialogResult MsgBox; InputBox DialogResult ColorDialog, FontDialog, OpenFiletDialog FolderBrowserDialog Windows Form programming with VB.Net 2005. 2 Show Form Form có hai Method Show là: 1. Show(): Form Modalless Dialog Box 2. ShowDialog(): Form dạng Modal Dialog Box Ghi chú: - Modalless Dialog Box: có thể chuyển Active qua lại giữa các Form trong một chương trình - Modal Dialog Box: Phải thực hiện và Đóng Form được gọi thì mới Active Form gọi - Vd Gọi Form: .Show() hoặc . ShowDialog() 04/07/2010 2 Windows Form programming with VB.Net 2005. 3 MessageBox.Show(P1,P2,P3,P4) P1: String: Thông tin cần hiển thị P2: Caption: Tieu đề của MessageBox P3: MessageBoxButtons: AbortRetryIgnore , OK , OKCancel , RetryCancel , YesNo ,YesNoCancel P4:MessageBoxIcon: Error, Information , None, Question , Stop , Warning Hàm trả về giá trị của DialogResult.OK, Cancel , Abort, Retry,Cancel , Yes,No Windows Form programming with VB.Net 2005. 4 Vd: Dim result As new DialogResult resul =MessageBox.Show("Bạn có muốn Thoát chương trình không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If result =Windows.Forms.DialogResult.Yes Then [Thực hiện công việc] Else [Không thực hiện công việc] End If 04/07/2010 3 Windows Form programming with VB.Net 2005. 5 MsgBox(P1,P2,P3) P1: String: Thông tin cần hiển thị P2: MsgBoxStyl`e: các kiểu hiển thị tương tự MessageBox P3: Title: Tiêu đề MessageBox Hàm trả về giá trị của MsgBoxResult.OK, Cancel , Abort, Retry,Cancel , Yes,No Windows Form programming with VB.Net 2005. 6 Vd: MsgBox() Dim msg, title As String Dim style As MsgBoxStyle Dim response As MsgBoxResult msg = "Do you want to continue?" style = MsgBoxStyle.DefaultButton2 Or _ MsgBoxStyle.Critical Or MsgBoxStyle.YesNo title = "MsgBox Demonstration" response = MsgBox(msg, style, title) If response = MsgBoxResult.Yes Then ' Perform some action. Else ' Perform some other action. End If 04/07/2010 4 Windows Form programming with VB.Net 2005. 7 Vd: MessageBox.Show() Private Sub frmMain_FormClosing(…,…) … Dim result As New DialogResult result = MessageBox.Show("Bạn có muốn Thoát chương trình không?", "Form closing", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If result = Windows.Forms.DialogResult.No Then ' Không cho đóng e.Cancel = True End If End Sub Windows Form programming with VB.Net 2005. 8 InputBox Public Function InputBox( ByVal Prompt As String, Optional ByVal Title As String = "", Optional ByVal DefaultResponse As String = "", Optional ByVal Xpos As Integer = -1, Optional ByVal YPos As Integer = -1 _ ) As String ¾Hàm trả về giá trị là String được nhập vào hoặc giá trị mặc định (Default) nếu có; xPos: tọa độ tính từ bên trái màn hình; yPos: tọa độ tính từ phía trên màn hình xuống khi hiển thị InputBox 04/07/2010 5 Windows Form programming with VB.Net 2005. 9 Vd: InputBox() Dim msg, title, strDefault As String Dim myValue As Object msg = "Enter a value between 1 and 3" title = "InputBox Demo" strDefault = "1" myValue = InputBox(msg, title, strDefault, 50, 100) ' nếu click Cancel thì nhận giá trị strDefault If myValue Is "" Then myValue = strDefault Windows Form programming with VB.Net 2005. 10 ColorDialog 04/07/2010 6 Windows Form programming with VB.Net 2005. 11 ColorDialog ¾Properties: - AllowFullOpen: định nghĩa màu theo ý người dùng (True or False) - FullOpen: cho phép bảng màu mở rộng khi show (True or False) - Color: Get or Set the Color is selected ¾Method: ShowDialog: hiển thị hộp thoại Color trả về kết quả của DialogResult là OK hoặc Cancel Windows Form programming with VB.Net 2005. VD: 12 Khi click Color button Æ OK đổi màu cho Textbox và label 04/07/2010 7 Windows Form programming with VB.Net 2005. 13 FontDialog Windows Form programming with VB.Net 2005. 14 FontDialog ¾Properties: Font: Get or Set FontName Color: Get or Set FontColor ¾Method: ShowDialog: hiển thị dialog Font trả về kết quả của DialogResult là OK hoặc Cancel Mục đích của Control này dùng để thay đổi font và màu của font. 04/07/2010 8 Windows Form programming with VB.Net 2005. VD: 15 Khi click Font button Æ OK đổi Font cho Textbox, label, button... Windows Form programming with VB.Net 2005. 16 OpenFileDialog 04/07/2010 9 Windows Form programming with VB.Net 2005. 17 OpenFileDialog ¾Properties: - FileName: trả về tên file đã được chọn - FileNames: trả về tên tất cả file đã được chọn - MultiSelect: True or False - Filter: Lọc các dạng file theo người dùng - FilterIndex: Chỉ ra Index hiện tại trong Filter - InitialDirectory: Khởi tạo thư mục, vd: “C:\” ¾Method: - Open: Mở file đã được chọn - ShowDialog: Windows Form programming with VB.Net 2005. 18 VD: Private Sub bntInsertImage_Click(… , …) OpenFileDialog1.Filter = "Picture files (*.jpg;*.gif)|*.jpg;*.gif| All files (*.*)|*.*" OpenFileDialog1.FilterIndex = 1 If OpenFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then PictureBox1.ImageLocation = OpenFileDialog1.FileName End If End Sub 04/07/2010 10 Windows Form programming with VB.Net 2005. 19 FolderBrowserDialog Windows Form programming with VB.Net 2005. 20 FolderBrowserDialog ¾Properties: - SelectedPath: Get or Set Path of Folder ¾Method: ShowDialog: hiển thị dialog Font trả về kết quả của DialogResult là OK hoặc Cancel 04/07/2010 11 Windows Form programming with VB.Net 2005. 21 VD: Private Sub bnt_Click(… , …) If FolderBrowserDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then lblPath.Text = "Path: " & FolderBrowserDialog1.SelectedPath End If End Sub Windows Form programming with VB.Net 2005. Bài tập: 22 Get File name: openFile hình thay cho hình hiện tại Get Paht: lấy đường dẫn (Path) cho hiển thị tại lblPath (Path:) Color: đổi màu nền cho form, label, buttom, textbox…. Font: đổi font cho form, label, buttom, textbox…. Viết Code cho event FormClosing có Messsage hỏi có YesNo nếu click No thì không đóng form 04/07/2010 12 Windows Form programming with VB.Net 2005. 23 B. Printing PrintDocument PrintPreviewDialog PrintPreviewControl PageSetupDialog PrintDialog Windows Form programming with VB.Net 2005. 24 PrintDocument ¾Properties: - DocumentName: chỉ ra tên document được in ¾Method: Print: ra lệnh in Document ¾Event: -BeginPrint: thực thi trước khi in trang đầu tiên -EndPrint: thực thi sau khi in trang cuối cùng -PrintPage: In các thành phần được đưa vào Document qua đối tượng e.Graphics.Draw… 04/07/2010 13 Windows Form programming with VB.Net 2005. 25 VD Private Sub PrintDocument1_PrintPage(…) e.Graphics.DrawString("Happy new year", New Font("tahoma", 50), Brushes.Black, 160, 125) e.Graphics.DrawImage(Image.FromFile("Blue.jpg "), 200, 200, 500, 500) End Sub Windows Form programming with VB.Net 2005. 26 PrintPreviewControl PrintPreview Control 04/07/2010 14 Windows Form programming with VB.Net 2005. 27 PrintPreviewControl ¾Properties: - AutoZoom: True or False - Columns: số trang hiển thị theo chiều ngang - Rows: số trang hiển thị theo chiều dọc - Document : chỉ ra Document được Preview (Object là PrintDocument) - Size : chỉ định chiều cao – rộng của control - Zoom : Phong to thu nhỏ Document với giá trị là double (vd: 0.25; 0.50; 1.0…) Windows Form programming with VB.Net 2005. 28 VD Private Sub cboZoom_SelectedIndexChanged (…) Dim ZoomNo As Integer = 0 Dim strZoom = cboZoom.SelectedItem strZoom = Replace(strZoom, "%", "") ZoomNo = CInt(strZoom) PrintPreviewControl1.AutoZoom = True ' PrintPreviewControl1.Size = New Size(ZoomNo * 10, ZoomNo * 10) PrintPreviewControl1.Document = PrintDocument1 PrintPreviewControl1.Zoom = ZoomNo / 100 End Sub 04/07/2010 15 Windows Form programming with VB.Net 2005. 29 PrintPreviewDialog ¾Properties: - DocumentName: chỉ ra document được Preview (Object là PrintDocument) ¾Method: - ShowDialog: Hiển thị hộp thoại PrintPreview Windows Form programming with VB.Net 2005. 30 VD Private Sub bntPrintPreview_Click (… …) PrintPreviewDialog1.Document = PrintDocument1 PrintPreviewDialog1.ShowDialog() End Sub 04/07/2010 16 Windows Form programming with VB.Net 2005. 31 PageSetupDialog ¾Properties: - Document: tài liệu cân Page Setup (Object là PrintDocument) - PageSettings: đối tượng thuộc namespace System.Drawing.Printing. PageSettings ¾Method: - ShowDialog: Hiển thị hộp thoại Page Setup Windows Form programming with VB.Net 2005. 32 VD Private Sub btnPageSetup_Click (…) Dim pgSetting As New System.Drawing.Printing.PageSettings PageSetupDialog1.PageSettings = pgSetting PageSetupDialog1.Document = PrintDocument1 PageSetupDialog1.ShowDialog() End Sub 04/07/2010 17 Windows Form programming with VB.Net 2005. 33 PrintDialog Windows Form programming with VB.Net 2005. 34 PrintDialog ¾Properties: - Document: Object là PrintDocument - AllowPrintToFile: cho phép in ra File - AllowSelection: cho phep in From… To … - AllowSomePages: cho phép in trang chỉ ra ¾Method: - ShowDialog: Hiển thị hộp thoại PrintDialog để chọn máy in - Print: thực hiện In 04/07/2010 18 Windows Form programming with VB.Net 2005. 35 Private Sub btnPrint_Click (…) PrintDocument1.DefaultPageSettings.Landscape = True PrintDialog1.Document = PrintDocument1 PrintDialog1.AllowPrintToFile = True PrintDialog1.AllowSelection = True PrintDialog1.AllowSomePages = True Dim result As DialogResult = PrintDialog1.ShowDialog() If result = Windows.Forms.DialogResult.Yes Then PrintDocument1.Print() End If End Sub VD Windows Form programming with VB.Net 2005. Bài tập: 36 Zoom: phóng to thu nhỏ PrintDocument Page Setup: gọi PageSetupDialog cho PrintDocument Print Preview: gọi PrintPreviewDialog cho PrintDocument Print : gọi PrintDialog cho PrintDocument
File đính kèm:
- Bài giảng Lập trình ứng dụng Windows Form in VB.NET 2005 - Buổi 3_DialogBox và Printing.pdf