Bài giảng Lập trình ngôn ngữ C# - Chương 4: Lập trình giao diện trong Windows (Phần 1)

Nội dung

Giới thiệu về lập trình giao diện trong Windows

Làm việc với Windows form và các điều khiển

Các hộp thoại thông dụng

Thực đơn và ứng dụng nhiều biểu mẫu

pptx51 trang | Chia sẻ: phuongt97 | Lượt xem: 659 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Lập trình ngôn ngữ C# - Chương 4: Lập trình giao diện trong Windows (Phần 1), để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 4 LẬP TRÌNH GIAO DIỆN TRONG WINDOWSNội dung13/08/2021Chương 4. Lập trình giao diện trong WindowsGiới thiệu về lập trình giao diện trong Windows 1Làm việc với Windows form và các điều khiển2Các hộp thoại thông dụng3Thực đơn và ứng dụng nhiều biểu mẫu42/511. Lập trình giao diện trong Windows.NET cung cấp WinForm và các điều khiển khác qua lớp cơ sở trong namespace System.Windows.FormsĐể thiết kế Windows ApplicationTạo một Windows Application trong Visual Studio.Net và thêm System.Windows.Forms và System.DrawingTạo một lớp mới để biểu diễn WinForm và dẫn xuất từ System.Windows.Forms.FormKhởi tạo các điều khiển khác nhau, thiết lập các thuộc tính và thêm tập hợp các điều khiển13/08/2021Chương 4. Lập trình giao diện trong Windows3/51Tạo ứng dụng Windows Form13/08/2021Chương 4. Lập trình giao diện trong Windows4/51Windows FormForm DesignerThiết kế giao diện đồ họa người sử dụng các điều khiển (control) từ hộp công cụ (Toolbox)Properties windowThiết lập thuộc tínhSolution ExplorerSolution: là tập tất cả các projectReference: chứa các file assembliesAssemblyInfo.cs: chứa thông tin assembly hiện tạiForm.cs: chứa file nguồn13/08/2021Chương 4. Lập trình giao diện trong Windows5/5113/08/2021Chương 4. Lập trình giao diện trong Windows6/512. Windows form và các điều khiểnĐiều khiển (control) là các thành phần cơ bản trên formCó các thành phầnThuộc tính (property)Mô tả đối tượng: tên, chiều cao,...Có thể xác định khi thiết kế (Design) hoặc thi hành (Runtime)Phương thức (method)Cách thức để thực hiện một công việc nào đóSự kiện (event)Phản ứng của đối tượng dựa trên sự kiện xảy ra13/08/2021Chương 4. Lập trình giao diện trong Windows7/51Xử lý sự kiệnCác phương thức xử lý sự kiện của các điều khiển thường gồm 2 tham số: sender và esender có kiểu object: đại diện cho đối tượng phát sinh sự kiệne có kiểu EventArgs: chứa các thông tin về sự kiện: vị trí chuột, thời gian phát sinh sự kiệnVí dụ:private void btnDisplay_Click(object sender, EventArgs e) { txtWelcome.Text = "Welcome to Visual C# 2010"; }13/08/2021Chương 4. Lập trình giao diện trong Windows8/51Hộp thông báo - MessageBoxMessageBox.Show(Nội dung thông báo, Tiêu đề, Kiểu chức năng, Kiểu biểu tượng);13/08/2021Chương 4. Lập trình giao diện trong WindowsNội dung thông báo được đặt trong nháy képMessageBox.Show("Bạn chưa nhập dữ liệu", "Thông báo", MessageBoxButtons.OK, MessageBoxIcon.Information);9/51Hộp thông báoPhương thức MessageBox.Show trả về giá trị của các nút mà người dùng nhấnCác giá trịSystem.Windows.Forms.DialogResult.OK System.Windows.Forms.DialogResult.Cancel System.Windows.Forms.DialogResult.AbortSystem.Windows.Forms.DialogResult.Retry System.Windows.Forms.DialogResult.Ignore System.Windows.Forms.DialogResult.Yes System.Windows.Forms.DialogResult.NoVí dụ: Yêu cầu chỉ thoát khi người dùng muốnprivate void bttThoat_Click(object sender, EventArgs e) { if (MessageBox.Show("Bạn có muốn thoát khỏi chương trình không?", "Thông báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes) Application.Exit(); //Thoát chương trình }13/08/2021Chương 4. Lập trình giao diện trong Windows10/51Các điều khiểnĐiều khiển thông thường :Label , TextBox , Combobox , ListBox , CheckBox, RadioButton , ButtonĐiều khiển đặc biệt :Tooltip , HelpProvider , ErrorProvider , ProgressBar , ListView , TreeView , DateTimePicker , MonthlyCalenderĐiều khiển MenuĐiều khiển container :GroupBox , TabControl , Panel v.v.13/08/2021Chương 4. Lập trình giao diện trong Windows11/51Form Các thuộc tính13/08/2021Chương 4. Lập trình giao diện trong WindowsThuộc tínhMô tảNameTên form, bắt đầu bằng frmIsMdiContainerTrạng thái SDI, MDIBackColorMàu nềnBackgroundImageHình nền trên formAcceptButtonNút xử lý mặc định – phím EnterCancelButtonNút xử lý mặc định – Phím EscFormBorderStyleĐường viền cho formEnabledTrue/False: cho phép/không cho phép tác độngFontFont chữ cho các điều khiển trên formForeColorMàu cho các điều khiển trên formIconIcon cho form12/51FormCác thuộc tính13/08/2021Chương 4. Lập trình giao diện trong WindowsThuộc tínhMô tảMainMenuStripMenu chínhContextMenuMenu ngữ cảnhOpacityĐộ trong suốt (0%-100%)StartPositionVị trí xuất hiệnTextTiêu đề cho formWindowStateTrạng thái của form khi chạy chương trình: Normal, Maximized, Minimized)ShowInTaskbarHiển thị trên TaskbarMaximizeBoxTrue/False: Có/không hiển thị nút phóng lớnMinimizeBoxTrue/False: Có/không hiển thị nút thu nhỏ13/51Form13/08/2021Chương 4. Lập trình giao diện trong WindowsCác sự kiệnNhấn để hiển thị danh sách các sự kiệnNháy đúp chuột vào tên sự kiện để vào cửa sổ viết mã lệnhSự kiệnMô tảLoadKhi form được nạp vào bộ nhớ, thường dùng khởi tạo giá trị và trạng thái cho các biến, điều khiển trên formClickNgười dùng nhấn chuộtFormClosedKhi người dùng nhấn nút Close xFormClosingKhi người dùng nhấn nút close x (trước sự kiện FormClosed)14/51FormCác phương thức13/08/2021Chương 4. Lập trình giao diện trong WindowsPhương thứcMô tảCloseĐóng formHideẨn formShowHiển thị form chế độ thông thường (modeless)ShowDialogHiển thị form như hộp thoại (model)15/51TextboxThuộc tính13/08/2021Chương 4. Lập trình giao diện trong WindowsThuộc tínhMô tảNameTên, bắt đầu bằng txtBackColorMàu nềnEnabledTrue/False: bật/tắt textboxFontFont chữForeColorMàu chữLockedTrue/false: khoá/không khoáMaxLengthChiều dài tối đa (0-32767)MultilineTrue: cho phép nhiều dòngPasswordChar Hiển thị kí tự này thay cho kí tự nhập vàoReadOnlyChỉ đọc16/51TextboxThuộc tính13/08/2021Chương 4. Lập trình giao diện trong WindowsThuộc tínhMô tảScrollBarsThanh cuốn ngang, dọc (có hiệu lực khi Multiline = true, thanh cuốn ngang có hiệu lực khi WordWrap=False)TabIndexThứ tự truy cập của hộp văn bản khi người dùng bấm phím Tab, thứ tự đầu tiên là 0.TextChứa nội dung của hộp văn bản.TextAlignCăn lềVisibleTrue/False: ẩn/hiệnWordWrapWordWrap = True: dòng văn bản được tự động cuộn xuống dòng khi gặp lề bên phải của hộp TextBox, ngược lại thì nhận giá trị False. Chỉ có hiệu lực khi Multiline = True.17/51TextboxSự kiện13/08/2021Chương 4. Lập trình giao diện trong WindowsSự kiệnMô tảTextChangedCó sự thay đổi trong hộp văn bảnClickNháy chuộtDoubleClickNháy đúp chuộtGotFocusKhi chuyển tiêu điểm tới hộp văn bản.KeyPressTrả về ký tự (trừ các ký tự đặc biệt như phím Delete, Home, Ctrl, F1) mà người sử dụng gõ vào hộp văn bản thông qua thuộc tính KeyChar. KeyDownTrả về mã ASCII của tất cả các ký tự mà người sử dụng gõ vào hộp văn bản thông qua thuộc tính KeyCode. LostFocusĐược kích hoạt khi hộp văn bản mất tiêu điểm.MouseMoveDi chuyển qua hộp văn bảnMouseLeaveDi chuyển ra khỏi hộp văn bản18/51TextboxPhương thức13/08/2021Chương 4. Lập trình giao diện trong WindowsPhương thứcMô tảAppendTextCộng dồn chuỗiClearXoá nội dung trên TextboxCopySao chépCutCắtPasteDánUndoQuay về trạng thái cũGetCharIndexFromPositionLấy kí tự tại vị tríSelectChọn19/51Textbox13/08/2021Chương 4. Lập trình giao diện trong Windows20/51Textbox – Ví dụHiển thị mã ASCII của kí tự bất kì nhập vào Textbox1private void textBox1_KeyDown(object sender, KeyEventArgs e) { int a; a = Convert.ToInt32(e.KeyCode); MessageBox.Show(a.ToString()); }Chỉ cho phép nhập số 0-9, dấu -, chấm ., phím del (mã ASCII 13) và backspace (mã ASCII 8)private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { if (((e.KeyChar >= '0') && (e.KeyChar 0EnabledTrue/False: cho phép/không cho phép hoạt độngSự kiệnMô tảTickKích hoạt sau mỗi chu kỳ Interval42/51RichTextBoxCho phép tạo/hiển thị các tập văn bản Rich Text (*.rtf)Name: bắt đầu bằng rtbPhương thức:LoadFile: nạp nội dungSaveFile: lưu file13/08/2021Chương 4. Lập trình giao diện trong Windows43/51DateTimePickerCho phép chọn thời gian dưới dạng lịch13/08/2021Chương 4. Lập trình giao diện trong WindowsThuộc tínhMô tảNameTên điều khiển DateTimePicker, bắt đầu bởi dtpFormatĐịnh dạng kiểu hiển thị của thời gian, Ngày tháng thường chọn giá trị ShortValuesGá trị hiện thời44/51Windows Media PlayerCho phép nghe nhạc/xem film (tương tự Windows Media Player của Windows)Đưa công cụ vào ToolBox: Nháy phải lên ToolBox, chọn Choose Items , trong mục COM Components chọn Windows Media PlayerBổ sung dòng using WMPLib; //Để làm việc với các hàm của Windows Media Player13/08/2021Chương 4. Lập trình giao diện trong Windows45/51Bài tập về nhàBài 1.Giao diện:Yêu cầu:Tạo dòng ToolTip “Nhập số nguyên” cho 2 hộp văn bản ‘Nhập a’ và ‘Nhập b’.Chỉ cho phép người dùng nhập số vào hai hộp văn bản.Nút Tổng: kiểm tra người dùng phải nhập dữ liệu cho cả hai số a và b, tính tổng các số từ a đến b nếu a < b, hoặc tính tổng các số từ b đến a nếu b < a, rồi hiển thị kết quả vào nhãn ở phía dưới.Nút Làm lại: xóa các dữ liệu cũ ở các điều khiển, sau đó đặt con trỏ vào hộp văn bản Nhập a.Nút Thoát: thoát khỏi chương trình13/08/2021Chương 4. Lập trình giao diện trong Windows46/51Bài tập về nhàBài 2.Giao diệnYêu cầu:Nhập số nguyên dương n, tạo n số nguyên ngẫu nhiên có giá trị từ 1 tới 100 (sử dụng lớp ngẫu nhiên Random và phương thức Next(n,m) để sinh số ngẫu nhiên trong khoảng n đến m)13/08/2021Chương 4. Lập trình giao diện trong Windows47/51Bài tập về nhàYêu cầuChỉ cho phép người dùng nhập số vào hộp văn bản Nhập n.Nút Nhập: kiểm tra người dùng phải nhập giá trị cho n, sau đó tạo n số ngẫu nhiên và hiển thị các số ngẫu nhiên đó ở nhãn Dẫy số.Nút Tính tổng: tính tổng n số ngẫu nhiên và hiển thị kết quả ở nhãn Tổng dẫy số.Nút Sắp xếp: sắp xếp n số ngẫu nhiên theo thứ tự tăng dần và hiển thị kết quả ở nhãn Sắp xếp.Nút Làm lại: xóa các dữ liệu cũ ở các điều khiển, sau đó đặt con trỏ vào hộp văn bản Nhập n.Nút Thoát: thoát khỏi chương trình13/08/2021Chương 4. Lập trình giao diện trong Windows48/51Bài tập về nhàBài 3. Giao diệnYêu cầu;Chỉ được phép nhập giá trị số cho Đơn giá và Số lượng, không cho phép nhập dữ liệu vào ô Tổng tiền. Nếu Giảm giá được chọn thì hiển thị 2 điều khiển giảm giá 5% và 10%, ngược lại không hiển thị 2 điều khiển này13/08/2021Chương 4. Lập trình giao diện trong Windows49/51Bài tập về nhàBài 4.Giao diện(Máy tính bỏ túi)Yêu cầuNgười dùng nhấn các nút từ 0 đến 9 để nhập sốNhấn các nút + - * / để lựa chọn phép toán (khi nhấn xong các nút này thì xoá trắng hộp văn bản)Nút C để xoá trắng hộp văn bảnNút = để tính toán13/08/2021Chương 4. Lập trình giao diện trong Windows50/51Bài tập về nhàBài 5. Giải phương trình bậc 2Giao diệnYêu cầu:Dùng điều khiển NumericUpDown để chọn giá trị cho a, b, c (trong [-100, 100])Nút Giải PTBH để thực hiện giải13/08/2021Chương 4. Lập trình giao diện trong Windows51/51

Các file đính kèm theo tài liệu này:

  • pptxbai_giang_lap_trinh_ngon_ngu_c_chuong_4_lap_trinh_giao_dien.pptx