Nội dung
Một số vấn đề lập trình trên Windows
Forms
Tạo Main Menu
Common Dialog
Message Box
Controls
52 trang |
Chia sẻ: phuongt97 | Lượt xem: 469 | Lượt tải: 0
Bạn đang xem trước 20 trang nội dung tài liệu Bài giảng Cơ sở Lập trình (Fundamental of Programming) - Chương 8: Lập trình với Windows Forms - Nguyễn Thị Khiêm Hòa, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chương 8:
Lập trình với Windows Forms
Giảng viên: Ths. Nguyễn Thị Khiêm Hòa
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
Nội dung
Một số vấn đề lập trình trên Windows
Forms
Tạo Main Menu
Common Dialog
Message Box
Controls
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
2
Lập trình trên môi trường Windows
Lập trình sự kiện
Hướng đối tượng
Component
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
3
Tạo ứng dụng trên Windows
File \ New \ Project
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
4
Form
Kế thừa từ System.Windows.Forms.Form
Là lớp đối tượng
Có thể thiết kế các thành phần (control) trên form
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
5
Thêm Form vào ứng dụng
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
6
Thuộc tính của Form
Name Opacity
BackColor Icon
BackGroundImage Topmost
ForeColor MaximizeBox
Text MinimizeBox
Font ControlBox
AcceptButton StartPosition CenterScreen
CancelButton WindowState
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
7
Phương thức của Form
Show( )
Activate( )
Refresh( )
Hide( )
Close( )
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
8
Sự kiện trên Form
Load
Activated
Shown
DeActivate
FormClosing
FormClosed
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
9
Đặt Form khởi động
Trong class Program.cs:
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Test_Form());
}
Thay tên form được đặt làm form khởi động
trong lệnh
Application.Run(new ());
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
10
Tạo Main Menu
Cách tạo Main Menu
Gắn các phương thức cho menu
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
11
Cách tạo Main Menu
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
12
Bài tập
Thực hiện:
Tạo Form có menu như mẫu
20 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
13
Gắn các phương thức cho menu
Double-click vào menu và viết lệnh
private void InitializeComponent()
{
this.mnExit.Click += new
System.EventHandler(this.mnExit_Click);
}
private void mnExit_Click(object sender, EventArgs e)
{
this.Close();
}
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
14
Common Dialog Box
Dùng Toolbox hoặc viết lệnh
private void mnLoad_Click(object sender, EventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "jpg files (*.jpg)|*.jpg|All files (*.*)|*.*";
dlg.Title = "Load Photo";
if (dlg.ShowDialog() == DialogResult.OK)
{try
{
pbxImage.Image = new Bitmap(dlg.OpenFile());
}
catch (Exception ex)
{
MessageBox.Show("Unable to load file:\n" + ex.Message);
}
}
dlg.Dispose();
} Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
15
Common Dialog Box
Thuộc tính DialogResult: OK, Cancel, Abort, Retry,
Ignore, Yes, No (None)
private void mnLoad_Click(object sender, EventArgs e)
{
if (dlg.ShowDialog() == DialogResult.OK)
{
}
}
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
16
Message Box
In ra một thông báo của hệ thống
private void mnExit_Click(object sender, EventArgs e)
{
if (MessageBox.Show("Do you want to exit?",
"My Application", MessageBoxButtons.YesNo,
MessageBoxIcon.Question) == DialogResult.Yes)
{
this.Close();
}
} Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
17
MDI Form
Cửa sổ cho phép chứa nhiều tài liệu
Đặt form làm cửa sổ chính (chứa các cửa sổ khác):
frmChild.MdiParent = this;
Đặt form làm cửa sổ con:
this.IsMdiContainer = True;
Tạo của sổ mới là cửa sổ con:
private void mnNew_Click(object sender, EventArgs e)
{
Form frmChild = new Form();
frmChild.MdiParent = this;
frmChild.text = “abc”;
frmChild.Show();
} Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
18
Quản lý cửa sổ MDI
Sắp xếp các cửa sổ trong MDI
private void mnTileArrangeIcons_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.ArrangeIcons);
}
private void mnCascade_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.Cascade);
}
private void mnTileHorizontal_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileHorizontal);
}
private void mnTileVertical_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout. TileVertical);
} Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
19
Quản lý cửa sổ MDI
Tạo danh sách các cửa sổ MDI trong menu
childForm.Text = dlg.FileName;
mnWindow.DropDownItems.Add(childForm.Text);
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
20
ToolBar
Tạo ToolBar
Chọn ToolStrip vẽ lên form
Click vào Button để tạo các nút trên ToolBar
Button: Nút ấn
DropDownButton: Nút sổ xuống
Separator: Đường phân cách
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
21
ToolBar
Định hình ảnh cho nút trên ToolBar:
Right-click chọn Set Image
Local Resource Import Chọn hình ảnh
Viết lệnh
Gọi từ menu: .PerformClick();
Viết lệnh trực tiếp
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
22
Picture Box
Thuộc tính
Image
ImageLocation StretchImage
Normal
SizeMode AutoSize
CenterImage
private void mnStretch_Click(object sender, EventArgs e)
{
pbxImage.SizeMode = PictureBoxSizeMode.StretchImage;
}
private void mnActualSize_Click(object sender, EventArgs e)
{
pbxImage.SizeMode = PictureBoxSizeMode.Normal;
}
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
23
Bài tập
Thực hiện:
Thêm vào form menu View như hình sau:
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
24
Label
Thuộc tính
Text
Font
TextAlign
TabIndex
Event
Click
TextChanged
KeyPress
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
25
TextBox
Thuộc tính MultiLine
Text PasswordChar
Font ReadOnly
TextAlign ScrollBar
TabIndex AcceptReturn
Event
Click
TextChanged
KeyPress
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
26
Button
Thuộc tính
Text
Font
TextAlign
TabIndex
Event
Click
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
27
Bài tập
Thực hiện:
Tạo Form, khi click vào nút View thì nội
dung được gõ trong textbox sẽ hiển thị
trong label
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
28
Bài tập
Thực hiện:
Thiết kế và viết chương trình máy
tính Calculator đơn giản
45 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
29
List Box
Thuộc tính SelectedItem
Items SelectedItems
MultiColumn Sorted
One
SelectedIndex SelectionMode Multi
SelectedIndices Count
Truy xuất dòng thứ i trong ListBox
for(int i = 0, i< ls1.Count, i++)
{
ls2.Items.Add(ls1.Items[i].ToString());
}
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
30
List Box
Phương thức
GetSelected(index)
Add(text)
RemoveAt(row)
Clear()
Event
SelectedIndexChanged
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
31
Bài tập
Thực hiện:
Tạo form thực hiện việc thêm xóa các
thành phần trong ListBox như sau:
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
32
Bài tập
Thực hiện:
Tạo form thực hiện việc di chuyển qua
lại giữa hai ListBox như sau:
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
33
Checked ListBox
Thuộc tính
CheckedItems
CheckedIndices
Phương thức
GetItemChecked(index)
Event
ItemCheck
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
34
Bài tập
Thực hiện:
Tạo form theo mẫu, các Item được chọn
trong Checked ListBox sẽ hiển thị trong
ListBox và sẽ mất trong ListBox khi không
được chọn
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
35
Combo Box
Thuộc tính Simple
DropDownStyle DropDown
DropDownList
Items
SelectedIndex
SelectedItem
Sorted
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
36
Combo Box
Phương thức
Add(text)
RemoveAt(row)
Clear()
Event
SelectedIndexChanged
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
37
Bài tập
Thực hiện:
Tạo form thực hiện chọn font và size từ
Combo box:
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
38
Bài tập
Thực hiện:
Tạo form thực hiện vẽ các hình ảnh được
chọn từ Combo box:
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 15 min
39
Check Box
Cho phép chọn một số tùy chọn
Các lựa chọn không loại trừ lẫn nhau
Thuộc tính
Checked
Text
Sự kiện
CheckedChanged
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
40
Bài tập
Thực hiện:
Tạo form cho phép chọn kiểu chữ và kích
thước chữ cho nội dung trong Label như sau:
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
41
GroupBox
Dùng để chứa các đối tượng khác
Thuộc tính
Text
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
42
Panel
Dùng để chứa các đối tượng khác nhưng không có
tiêu đề
None
Thuộc tính FixedSingle
Fixed3D
BorderStyle
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
43
Radio Button
Cho phép chọn một số tùy chọn
Các lựa chọn loại trừ lẫn nhau
Thuộc tính
Checked
Text
Sự kiện
CheckedChanged
Click
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
44
Bài tập
Thực hiện:
In message Box dựa vào các tùy chọn như sau:
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM 15 min
45
Tab Control
Tạo ra các cửa sổ Tab
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
46
Tab Control
Tạo ra các cửa sổ Tab
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
47
Tab Control
Tạo ra các cửa sổ Tab
Thêm cửa sổ Tab
Add Tab
Xóa cửa sổ Tab
Remove Tab
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
48
Bài tập
Thực hiện: Tạo ứng dụng sau:
15 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
49
Timer
Thuộc tính
Interval (ms)
Enabled
Phương thức
Start()
Stop()
Event
Tick
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
50
Bài tập
Thực hiện:
Đặt chu kỳ 5 phút tự kết thúc chương trình
5 min
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
51
Q&A
Khoa Công nghệ Thông tin - Đại học Ngân hàng TP.HCM
52
Các file đính kèm theo tài liệu này:
- bai_giang_co_so_lap_trinh_fundamental_of_programming_chuong.pdf