Chương 1 MÔI TRƯỜNG PHÁT TRIỂN ỨNG DỤNG
Nội dung chương 1
Slide 3
Slide 4
Slide 5
Slide 6
Slide 7
Slide 8
Slide 9
Slide 10
Slide 11
Slide 12
Slide 13
Slide 14
Slide 15
Slide 16
Slide 17
Slide 18
Slide 19
Slide 20
Slide 21
Slide 22
Slide 23
Slide 24
Slide 25
Slide 26
Slide 27
Slide 28
Slide 29
Slide 30
Slide 31
Slide 32
Slide 33
Slide 34
Slide 35
Slide 36
Slide 37
Slide 38
Chương 2 LÀM VIỆC VỚI CÁC CONTROL
Nội dung chương 2
Slide 41
Slide 42
Slide 43
Slide 44
Slide 45
Slide 46
Slide 47
Slide 48
Slide 49
Slide 50
Slide 51
Slide 52
Slide 53
Slide 54
Slide 55
Slide 56
Slide 57
Slide 58
Slide 59
Slide 60
Slide 61
Slide 62
Slide 63
Slide 64
Slide 65
Slide 66
Slide 67
Slide 68
Slide 69
Slide 70
Slide 71
Slide 72
Slide 73
Slide 74
Slide 75
Slide 76
Slide 77
Slide 78
Slide 79
Slide 80
Slide 81
Slide 82
Slide 83
Slide 84
Slide 85
Slide 86
Slide 87
Slide 88
Slide 89
Slide 90
Slide 91
Slide 92
Slide 93
Slide 94
Slide 95
Slide 96
Slide 97
Slide 98
Slide 99
Slide 100
Slide 101
Slide 102
Slide 103
Slide 104
Slide 105
Slide 106
Slide 107
Slide 108
Slide 109
Slide 110
Slide 111
Slide 112
Slide 113
Slide 114
Slide 115
Slide 116
Slide 117
Slide 118
Slide 119
Slide 120
Slide 121
Slide 122
Slide 123
Slide 124
Slide 125
Chương 3 LÀM ViỆC VỚI CÁC ĐỐI TƯỢNG ĐiỀU KHIỂN (CONTROLS) TRÊN TOOLBOX
Nội dung chương 2 1. Các đối tượng điều khiển trên ToolBox 2. Làm việc với menu và hộp thoại
1. Các đối tượng điều khiển trên thanh ToolBox 1.1. Đối tượng Button – Nút lệnh
Slide 129
Viết mã cho nút nhấn
Slide 131
1.2. Đối tượng Text Box-hộp văn bản Hộp văn bản là đối tượng được tìm thấy nói chung trong hầu hết giao diện người dùng. Đó là một đối tượng được sử dụng để giải quyết dữ liệu văn bản trong một giao diện người dùng. Hộp văn bản có thể được sử dụng cho việc trình bày dữ liệu hoặc nhận dữ liệu từ người sử dụng. Tập những thuộc tính hộp văn bản kiểu cho phép thay đổi màu nền của hộp văn, màu chử, font chữ, hoặc làm chúng được che giấu hay trình bày, hoặc làm chúng tích cực hay không hoạt động vân vân .
Slide 133
Slide 134
Slide 135
1.3. Đối tượng Label Nhãn (Label) là những đối tượng được dùng để đưa dữ liệu ra form. Những thuộc tính của nhãn cho phép thay đổi màu nền của nhãn, màu chữ, font chữ, hoặc làm chúng được che giấu hay trình bày, hoặc làm chúng tích cực hay không hoạt động vân vân .
1.4. Đối tượng ListBox Hộp danh sách (ListBox) là những đối tượng được dùng để trình bày một danh sách những tùy chọn tới người sử dụng từ đó người sử dụng có thể chọn một. Trong những hộp danh sách, người sử dụng không được cho phép để làm bất kỳ sự thay đổi nào hay soạn thảo trong đó mà chỉ có thể chọn từ danh sách đã cho. Với những danh sách dài hộp danh sách sẽ xuất hiện thanh cuộn dọc.
Slide 138
1.5 Đối tượng ComboBox Một hộp danh sách thả xuống là một dạng chuyên dụng của hộp danh sách nhưng chỉ hiển thị một tùy chọn. Người sử dụng chỉ có thể chọn một trong danh sách các tùy chọn khi kích vào nút drop-down. Hộp loại danh sách này đặc biệt hữu ích khi người dùng không muốn cấp phát nhiều không gian cho một danh sách liệt kê trên giao diện người dùng (hình 1.4)
Slide 140
1.7 Đối tượng CheckBox Hộp kiểm tra được sử dụng để lấy thông tin vào từ người sử dụng ở dạng lôgíc (đúng/sai), nghĩa là chỉ sử dụng trong những trường hợp người sử dụng kích vào checkbox để chọn ‘đúng’ hay ‘sai’ (không có).
Slide 142
1.8 Đối tượng Radio Button Nút Radio, cũng được biết đến như những nút tùy chọn, tồn tại như một nhóm của những tùy chọn, ở đó người sử dụng chỉ có thể chọn một những tùy chọn (loại trừ lẫn nhau) (hình 1.6a)
1.9 Đối tượng Timer Thường được dùng để qui định thời gian định kỳ cho việc thực hiện hay kiểm tra các thao tác nào đó trong chương trình. Chú ý : Biểu tượng Timer không thể thay đổi kích cỡ và sẽ không xuất hiện khi chương trình đang thực hiện. Ví dụ : viết chương trình thực hiện yêu cầu cứ sau 1 giây là chương trình sẽ ghi giờ hiện tại của hệ thống ra Label2
Thay đổi thuộc tính của đối tượng : nhắp chọn các đối tượng cần thay đổi giá trị thuộc tính, nhấn F4 hiển thị cửa sổ Properties, sau đó khai báo giá trị mới. Interval : 1000 Khai báo khoảng thời gian định kỳ để kiểm tra hay thực hiện các thao tác nào đó, giá trị được tính bằng miliseconde (mili giây) 1 giây=1000 mili giây private void timer1_Tick(object sender, EventArgs e) { textBox1.Text = DateTime.Today.ToShortTimeString(); }
1.10 Đối tượng DateTimePicker Đối tượng này cho phép người dùng chọn ngày hoặc thời gian bằng giao diện lịch đồ họa. Ví dụ : chương trình Birthday sử dụng điều khiển DateTimePicker cho phép người dùng chọn ngày tháng năm, tiếp đến khi nhấn nút Xem trên form, chương trình sẽ hiển thị ngày tháng năm sinh mà người dùng đã chọn qua thông điệp MessageBox.
1.11. GroupBoxes và Panels GroupBoxes và Panels được dùng để sắp xếp các điều khiển trên giao diện người sử dụng (GUI). GroupBoxes và Panels dùng để nhóm một vài điều khiển có cùng chức năng hoặc một vài điều khiển có liên quan với nhau trên một GUI. Tất cả các điều khiển trong một GroupBox hoặc một Panel sẽ cùng di chuyển khi GroupBox hay Panel di chuyển.
Các thuộc tính của Panel Các thuộc tính Mô tả AutoScroll Thanh cuộn xuất hiện khi Panel quá nhỏ, không đủ để đặt các điều khiển lên đó. Giá trị mặc định là False BorderStyle đường viền của Panel. Giá trị mặc định là None.
Panel và GroupBoxe có thể chứa các Panel và GroupBoxe khác, cho các cách trình bày phức tạp hơn. Bạn có thể tổ chức một GUI bằng cách gom các điều khiển vào bên trong một GroupBox hoặc Panel. GroupBox hoặc Panel có thể được đặt trong Form. Sự phân chia các điều khiển thành các “nhóm” chức năng, nhờ đó bạn có thể sắp xếp một cách dễ dàng..
Slide 150
1.12. ToolTip ToolTip giúp hiện ra một đoạn văn bản khi lướt chuột qua một điều khiển trên GUI. Nhiều chương trình sử dụng ToolTip để nhắc người sử dụng biết được mục tiêu của điều khiển. Sau đây là các thuộc tính chung của tool tips : Thuộc tính Mô tả AutoPopDelay Khoảng thời gian (milliseconds) ToolTip xuất hiện khi chuột lướt qua điều khiển control.InitialDelay Khoảng thời gian (milliseconds) mà chuột phải lướt qua điều khiển trước khi tool tips xuất hiện
Thuộc tính Mô tả ReshowDelay Khoảng thời gian (milliseconds) giữa 2 tool tips khác nhau xuất hiện (khi chuột di chuyển từ điều khiển này đến điều khiển kia). Sự kiện Draw Sự kiện này cho phép người lập trình cập nhật sự xuất hiện của tool tip.
Slide 153
Slide 154
Slide 155
1.13. Điều khiển NumericUpDown Mục tiêu của điều khiển NumericUpDown là muốn hạn chế sự lựa chọn của người dùng trong một phạm vi nào đó của những giá trị số. Điều khiển này xuất hiện như là một TextBox, với hai nút nhỏ nằm bên phải của TextBox, với một nút hướng lên và một nút hướng xuống. Mặc định, người dùng có thể gõ giá trị số vào trong điều khiển này hoặc kích vào mũi tên lên và xuống để tăng hay giảm giá trị trong điều khiển.
Điều khiển NumericUpDown control có tên (name) yearUpDown Thuộc tính Minimum = 1 và thuộc tính Maximum = 10. Thuộc tính Increment = 1, là giá trị mặc định. Điều này nói lên rằng, người có thể đưa vào số năm (year) từ 1 đến 10, bước nhảy là 1. Nếu chúng ta đặt bước nhảy là 0.5, thì chúng ta có thể nhập các giá trị như 1.5 hay 2.5. Đặt thuộc tính ReadOnly của NumericUpDown là true nếu không muốn người dùng nhập số vào điều khiển NumericUpDown.
Slide 158
// Fig. 13.36: interestCalculatorForm.cs // Demonstrating the NumericUpDown control. using System; using System.Windows.Forms; public partial class interestCalculatorForm : Form { // default constructor public interestCalculatorForm() { InitializeComponent(); } // end constructor
private void calculateButton_Click(object sender, EventArgs e ) { // declare variables to store user input decimal principal; // store principal double rate; // store interest rate int year; // store number of years decimal amount; // store amount string output; // store output // retrieve user input principal = Convert.ToDecimal( principalTextBox.Text ); rate = Convert.ToDouble( interestTextBox.Text ); year = Convert.ToInt32( yearUpDown.Value );
// set output header output = "YeartAmount on Depositrn"; // calculate amount after each year and append to output for ( int yearCounter = 1; yearCounter <= year; yearCounter++ ) { amount = principal * (( decimal ) Math.Pow(( 1 + rate / 100),yearCounter )); output += ( yearCounter + "t" + string.Format( "{0:C}", amount ) + "rn" ); } // end for displayTextBox.Text = output; // display result } // end method calculateButton_Click } // end class interestCalculatorForm
2 Làm việc với menu và hộp thoại 2.1 Sử dụng điều khiển MenuStrip Điều khiển Menu là công cụ giúp cho bạn thêm vào và xây dựng menu cho chương trình, cho phép bạn thay đổi thuộc tính cho menu trong cửa sổ Properties Window. Với điều khiển này, bạn có thể thêm một menu mới, hiệu chỉnh và sắp xếp lại các menu hiện có, xóa các mục menu không sử dụng. Bạn cũng có thể thêm một số hiệu ứng cho menu, như các phím tắt, dấu chọn checkbox cho menu. Sau khi thêm mục chọn vào menu, bạn có thể sử dụng thủ tục sự kiện để xử lý các lệnh cho mục chọn tương ứng.
Ví dụ : sử dụng điều khiển MenuStrip để tạo menu Clock chứa các lệnh hiển thị ngày giờ (tham khảo chương 4 – Từng bước học lập trình Visual Basic.Net _ Phương Lan chủ biên) Tạo menu : - Khởi động Visual Studio - Chọn File > New > Project. Hộp thoại Project xuất hiện - Tạo một dự án Windows Application (Visual C#) - Nhấp chọn điều khiển MenuStrip trên ToolBox, kéo thả vào form - Nhấp vào chuỗi “Type Here”, gõ vào chuỗi “Clock”. Bạn sẽ thấy xuất hiện thêm hai thẻ “Type Here” nữa.
Nhấp vào chuỗi “Type Here”, gõ vào chuỗi “Date” để tạo mục chọn con mới và nhấn Enter. Visual Studio sẽ thêm mục menu vào ngay bên dưới Clock và hiển thị thẻ “Type Here” tiếp theo.
Thêm phím truy cập (phím tắt) vào các mục chọn : - Nhấn vào mục Clock trên menu của Form. Đặt con trỏ chuột vào ngay mục chọn. - Đặt dấu “&” trước ký tự “C”, “C” đã trở thành phím truy cập tắt cho mục chọn Clock. - Thực hiện tương tự cho mục chọn Date và Time
Xử lý các mục chọn : Sau khi xây dựng cấu trúc và các mục chọn cho menu, để một mục chọn có khả năng làm một lệnh xử lý bạn cần cài đặt thủ tục xử lý sự kiện cho chúng. Thủ tục xử lý sự kiện thường bao gồm các phát biểu chương trình thực hiện tác vụ gì đó tương tự như khi bạn gọi thủ tục sự kiện của nút nhấn. Chúng ta sẽ thêm vào form một điều khiển Label để hiển thị kết xuất phản ứng lại kết quả khi người dùng chọn lệnh Date hoặc Time từ menu
private void dateToolStripMenuItem_Click(object sender, EventArgs e) { label1.Text = DateTime.Today.ToShortDateString(); } private void timeToolStripMenuItem_Click(object sender, EventArgs e) { label1.Text = DateTime.Today.ToShortTimeString(); }
2.2 Sử dụng thành phần điều khiển hộp thoại chuẩn Hộp thoại phục vụ cho các tác vụ trong ứng dụng Windows như mở file, lưu file, in ấn, chọn màu, chọn font. Hầu hết bạn thường viết mã lệnh nối với hộp thoại để lấy thông tin về xử lý. Bảng dưới đây là danh sách tên các hộp thoại chuẩn : Hộp thoại Mục đích OpenFileDialog Cho phép bạn lấy về ổ đĩa, tên file, tên folder đối với một file hay thư mục đang tồn tại trên đĩa SaveFileDialog Cho phép bạn đặt tên file, tên folder mới đối với một file hay thư mục sắp ghi hay tạo mới trên đĩa
Hộp thoại Mục đích FontFileDialog Cho phép bạn chọn tên và kiểu font chữ mới trong hệ thống ColorDialog Cho phép bạn chọn tên và hiệu chỉnh giá trị màu sắc PrintDialog Cho phép bạn thiết lập các tùy chọn in ấn PrintPreviewDialog Hiển thị hộp thoại xem trước khi in PageSetupDialog Cho phép người dùng điều khiển các thiết lập về khổ trang in như canh lề, khổ giấy, chiều in.
Ví dụ : Tạo một giao diện ứng dụng như sau : 1. Tạo một dự án menu như trong mục 2.1 2. Thêm thành phần điều khiển hộp thoại OpenFileDialog dùng để mở một ảnh và ColorDialog cho phép chọn màu cho nhãn Label1 đang hiển thị thời gian 3. Kích chọn điều khiển PictureBox trên thanh ToolBox, vẽ khung PictureBox lên form, đặt thuộc tính SizeMode của PictureBox là StretchImage 4. Thêm mục chọn File trên menu như sau :
Viết mã cho mục chọn File như sau : private void toolStripMenuItem1_Click(object sender, EventArgs e) { openFileDialog1.Filter = "*.bmp|*.gif"; if (openFileDialog1.ShowDialog()==DialogResult.OK ) pictureBox1.Image = System.Drawing.Image.FromFile_ (openFileDialog1.FileName.ToString()); }
5. Thêm mục chọn Label Color vào menu Clock - Nhấn chọn mục “Type Here” phía dưới - Gõ vào &Label Color
Viết mã cho mục chọn Label Color như sau : private void labelColorToolStripMenuItem_Click(object sender, EventArgs e) { if (colorDialog1.ShowDialog() == DialogResult.OK) label1.BackColor = colorDialog1.Color; }
6. Nhấn nút Start trên thanh công cụ hoặc nhấn F5 để biên dịch và chạy chương trình. Cửa sổ form xuất hiện, bạn chọn mục file để chọn ảnh hiển thị, chọn mục Clock > Date để hiển thị ngày và chọn mục Clock > Label Color để chọn màu nền cho Lable. Form có dạng như sau :
Chương 4
Nội dung chương 6
Slide 177
Slide 178
Slide 179
Slide 180
Slide 181
Slide 182
Slide 183
Slide 184
Slide 185
Slide 186
Slide 187
Slide 188
Slide 189
Slide 190
Slide 191
Slide 192
Slide 193
Slide 194
Chương 5
Nội dung chương 5
Slide 197
Slide 198
Slide 199
Slide 200
Slide 201
Slide 202
Slide 203
Slide 204
Slide 205
Slide 206
Slide 207
Slide 208
Slide 209
Slide 210
Slide 211
Slide 212
Slide 213
Slide 214
Slide 215
Slide 216
Slide 217
Slide 218
Slide 219
Slide 220
Slide 221
Slide 222
Slide 223
Slide 224
Slide 225
Slide 226
Slide 227
Slide 228
Slide 229
Slide 230
Slide 231
Slide 232
Slide 233
Slide 234
Slide 235
Slide 236
Slide 237
Slide 238
Slide 239
Slide 240
Slide 241
Slide 242
Slide 243
Slide 244
Slide 245
Slide 246
Slide 247
Slide 248
Slide 249
Slide 250
Slide 251
Slide 252
Slide 253
Slide 254
Slide 255
Slide 256
Slide 257
Chương 7
Nội dung chương 7
Slide 260
Slide 261
Slide 262
Slide 263
Slide 264
Slide 265