B GIO DC V O TO TRNG I HC S PHM TP.
HCM KHOA CNG NGH THNG TIN
[Link]
BI T P TH C HNH L P TRNH WINDOWS C#
Ph n 1: Lm quen v i ng d ng Form
1. Bi tp m u
1.1. Khi to Project T Visual Studio 2005/2008/2010 ta chn File New Project.
Mt hp thoi xut hin, ta chn Template l Windows Form Application.
ng dng c to ra nh sau:
Lng Trn Hy Hin
[Link]
1/16
Bi tp thc hnh lp trnh Windows Form vi C#
Project BaiTap01 gm c thnh phn [Link] ging trong ng dng Console Application v cn c mt thnh phn mi l [Link] ang ch Design vi giao din nh sau:
Ch ca s Toolbox cha cc cng c thit k: Nu khng thy ca s ny, ta chn menu View Toolbox.
Lng Trn Hy Hin hienlth@[Link]
2/16
Bi tp thc hnh lp trnh Windows Form vi C# 1.2. ng dng m u: 1.2.1. i tn form: Click ln Form1 ca s Design, quan st trn ca s Properties, ta thy c thuc tnh Text, gi tr mc nh l Form1, ta i thnh BaiTap01.
Ta thy thanh tiu Form1 i sang BaiTap01.
1.2.2. Ko th cc control t Toolbox vo Form T thanh Toolbox, ko th mt Label b vo Form, sau di chuyn chut n ca s Properties, chn thuc tnh Text, i t label1 sang Nhp n.
Lng Trn Hy Hin hienlth@[Link]
3/16
Bi tp thc hnh lp trnh Windows Form vi C#
Tip theo ko th mt Textbox b vo form.
Lng Trn Hy Hin hienlth@[Link]
4/16
Bi tp thc hnh lp trnh Windows Form vi C# Trong ca s Properties ca textbox ny, thuc tnh Name ta i t textBox1 thnh txtN.
Tng t thm vo form mt label c thuc tnh Text i thnh Tng v mt textbox c thuc tnh Name i thnh txtTong.
Tip theo, ko mt Button t Toolbox v th vo Form, i thuc tnh Name ca button ny l btnTinh, text l Tnh. Ko th thm mt Button na tng t trn, Name = btnThoat, Text = Thot.
Lng Trn Hy Hin hienlth@[Link]
5/16
Bi tp thc hnh lp trnh Windows Form vi C# a chut v cc gc ca Form thay i kch thc ca s. 1.2.3. X l s kin click chut ln button Double click vo button Tnh (btnTinh), mt ca s son tho xut hin vi ni dung nh sau:
Ch : Ca s ny l [Link] tng ng vi [Link][Design]. Phng thc btnTinh_Click c pht sinh do ta va double click vo btnTinh.
Ta nh ngha cho lp ny nh sau:
Lng Trn Hy Hin hienlth@[Link]
6/16
Bi tp thc hnh lp trnh Windows Form vi C#
Tip theo ta x l s kin click chut cho button btnThoat. Quay li [Link][Design], double click ln button Thot, [Link] c ni dung thay i nh sau:
Lng Trn Hy Hin hienlth@[Link]
7/16
Bi tp thc hnh lp trnh Windows Form vi C#
Ta x l cho s kin ny nh sau:
private void btnThoat_Click(object sender, EventArgs e) { Close(); }
Chy th chng trnh (F5):
Nhp n = 4 v click vo button Tnh. Kt qu xut hin txtTong:
Lng Trn Hy Hin hienlth@[Link]
8/16
Bi tp thc hnh lp trnh Windows Form vi C#
Click vo button Thot kt ni chng trnh.
2. Bi tp c gi
2.1. Bi 01 Vit chng trnh nhp vo 2 s a v b, cho bit s ln nht v nh nht trong 2 s a,b vi giao din nh sau
Hnh 1: Chng trnh tm Min, Max 2 s
Hng dn gi : s dng cu trc If Else 2.2. Bi 02 Vit chng trnh nhp vo 2 s a, b v c cho bit s ln nht v nh nht trong 3 s a, b v c vi giao din nh sau
Hnh 2: Chng trnh tm Min, Max 3 s
Lng Trn Hy Hin hienlth@[Link]
9/16
Bi tp thc hnh lp trnh Windows Form vi C#
2.3. Bi 03 - Nhp vo mt s nguyn t 0 n 9, hin th bng ch cc k s trn, v d: Nhp 1 Nhp 2 Nhp 3 .. Nhp 9 Mt Hai Ba Chn
Hnh 3: Chng trnh c s
Hng dn gi : s dng cu trc switch case 2.4. Bi 04 - Nhp vo mt s nguyn dng N, hin th bng ch s va nhp trn, v d: Nhp 1 Mt Nhp 12 Mi hai Nhp 123 Mt trm hai mi ba
Hnh 4: Chng trnh c s tng qut
Hng dn gi : s dng cu trc switch case Lng Trn Hy Hin hienlth@[Link] 10/16
Bi tp thc hnh lp trnh Windows Form vi C# 2.5. Bi 05 - Vit chng trnh nhp vo gi tr nguyn dng N, tnh tng S = 1 + 2 + 3 ++ N vi giao din nh sau:
Hnh 5: CT tnh tng N s nguyn lin tip - 1
Hng dn gi : s dng vng lp While, For 2.6. Bi 06- Vit chng trnh nhp vo gi tr nguyn dng N, tnh tng S = 1 + 2 + 3 ++ N vi giao din nh sau
Hnh 6: CT tnh tng N s nguyn lin tip - 2
Tng t tnh tng - S = 1 + 3 + 5 + 7 ++ (2N +1) - S = 2 + 4 + 6 + 8 ++ 2N. 2.7. Bi 07: Vit chng trnh gm 1 form trong c 1 button v 1 label hin th s ln nhn button .
Lng Trn Hy Hin hienlth@[Link]
11/16
Bi tp thc hnh lp trnh Windows Form vi C# 2.8. Bi 08- Vit chng trnh nhp vo gi tr nguyn dng N, v s thc X, tnh tng S = X + X2 + X3 + X4 +..+ XN
Hnh 7: CT tnh tng ly tha
Tng t tnh tng - S = X + X3 + X5 + X5 +..+ X2N+1 - S = X2 + X4 + X6 +..+ X2N 2.9. Bi 09 Thit k giao din v ci t chng trnh nh sau:
Hnh 8: Cc php ton c bn
Lng Trn Hy Hin hienlth@[Link]
12/16
Bi tp thc hnh lp trnh Windows Form vi C# 2.10. Bi 10 (BT c hng dn) My tnh n gin thc hin cc chc nng +, -, *, /.
MY TNH N GI N1
Hnh 9: Chng trnh my tnh n gin
Bc 1: To Project, ghi tiu form, icon form, n nt Minimize, Maximize
X l cho nt X: S kin FormClosing()
Lng Trn Hy Hin hienlth@[Link]
13/16
Bi tp thc hnh lp trnh Windows Form vi C# Bc 2: Thit k mn hnh v t tn nh hnh sau:
Trong cc phm s t tn t btn0 Bc 3: Khai bo cc bin cn thit
btn9.
string chuoitam = ""; //Dng lu gi tm gi tr ca s nhp vo char toantu; //Dng lu k hiu ton t ca php ton, vd: +, -, *, / double[] toanhang = new double[2];//Lu 2 ton hng (s hng) ca php ton double ketqua; //Dng lu kt qu ca php ton int buoc = 1; //Dng lu gi s bc thc hin php ton
//Khai bo bin string chuoitam = ""; char toantu; double[] toanhang = new double[2]; double ketqua; int buoc = 1;
Bc 4: Vit hm cho chung cho cc phm s (0 9) t tn cho phm va bm l b. Nu b rng, kt thc hm. Ngoi ra chng ta cng loi tr trng hp c rt nhiu s 0 ng trc mt s khc (v d 000000001 chnh l 1). Do [Link] == 0 && [Link] == 0 th kt thc hm.
//Hm bm phm s private void NumberButtons(object sender, EventArgs e) { Button b = sender as Button; if ((b == null) || ([Link] == "0" && [Link] == 0)) return; chuoitam += [Link]; [Link] = chuoitam; }
Lu : Cho tt c cc phm s gi hm ny ng vi s kin click. Lng Trn Hy Hin hienlth@[Link] 14/16
Bi tp thc hnh lp trnh Windows Form vi C# Bc 5: Vit hm x l cho nt +/- (dng/m)
//Hm x l cho nt +/- (dng/m) private void btnCongTru_Click(object sender, EventArgs e) { if ([Link]('-')) chuoitam = [Link]("-", ""); else chuoitam = "-" + chuoitam; [Link] = chuoitam; }
Bc 6: Vit hm x l cho phm .
//Hm x l phm chm private void btnCham_Click(object sender, EventArgs e) { if () { chuoitam = chuoitam + "."; [Link] = chuoitam; } }
Bc 7: Vit hm x l cho nt C
//Hm x l nt C private void btnC_Click(object sender, EventArgs e) { if ([Link] == 0) { buoc = 1; toanhang[0] = toanhang[1] = 0.0; toantu = ' '; ketqua = 0.0; } else chuoitam = "0"; [Link] = chuoitam; }
Bc 8: Vit hm x l cho phm bng2
//Hm bm phm s private void btnBang_Click(object sender, EventArgs e) { if ([Link] != 0) toanhang[1] = [Link](chuoitam); switch (toantu) { case '+': ketqua = toanhang[0] + toanhang[1]; break; case '-': ketqua = toanhang[0] - toanhang[1]; break; case '*': ketqua = toanhang[0] * toanhang[1]; break; case '/': ketqua = toanhang[0] / toanhang[1]; break; } [Link] = [Link](); //Gn li gi tr ban u buoc = 1; chuoitam = ""; }
2
Sinh vin t hon chnh thm cho trng hp bm nhiu du = lin tip.
Lng Trn Hy Hin hienlth@[Link]
15/16
Bi tp thc hnh lp trnh Windows Form vi C# Bc 9: Vit hm x l cc phm thc hin php ton3
//Hm bm phm s private void Operations(object sender, EventArgs e) { Button b = sender as Button; if(buoc == 1) toantu = [Link][0];//Ly k hiu ton t if ([Link] == 0) toanhang[buoc - 1] = ketqua; else toanhang[buoc - 1] = [Link](chuoitam); if (buoc == 2) { btnBang_Click(null, null); toantu = [Link][0]; toanhang[0] = ketqua; buoc = 2; } else { [Link] = toanhang[0].ToString(); buoc++; } chuoitam = ""; }
2.11. Bi 11: Chng trnh my tnh ca Windows 7. Thit k my tnh b ti c cc chc nng nh hnh bn. Khng cn thit k menu.
Sinh vin t hon chnh thm cho trng hp bm nhiu ln 1 ton t.
Lng Trn Hy Hin hienlth@[Link]
16/16