Hướng dẫn lập trình Delphi - Quyển 1: Nhập môn

TỰA ĐỀ Trang

Giới thiệu thông tin 2

Tóm lượt môi trường lập trình Delphi 3

Bài 1 Chương trình Delphi đơn giản nhất 4

Bài 2 Sửdụng nút nhấn và thuộc tính 5

Bài 3 Xuất văn bản và sửdụng nhãn 7

Bài 4 Ra và vào của văn bản 9

Bài 5 Sửdụng lệnh IF 12

Bài 6 Adding Machine - Alter it to do [ - * div ] as well. 13

Bài 7 Thêm Items vào một List Box 14

Bài 8 Tạo menu - Một Text Editor - Files 15

Bài 9 Graphics, sựlặp lại sửdụng FOR và các biến 20

pdf38 trang | Chuyên mục: Delphi | Chia sẻ: dkS00TYs | Lượt xem: 4356 | Lượt tải: 1download
Tóm tắt nội dung Hướng dẫn lập trình Delphi - Quyển 1: Nhập môn, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
mage1.Canvas.Pen.Color := clred; { Set Pen Colour } 
 Image1.Canvas.Brush.Color := clRed; { Set Brush Colour } 
 Image1.Canvas.Ellipse(30, 30, 70, 70); 
end; 
procedure TForm1.Button3Click(Sender: TObject); 
begin 
 Image1.Canvas.Pen.Color := clYellow; { Set Pen Colour } 
 Image1.Canvas.Brush.Color := clYellow; { Set Brush Colour } 
 { Colour image Red } 
 Image1.Canvas.Rectangle(0, 0, Image1.Width, Image1.Height); 
 Image1.Canvas.Pen.Color := clred; { Set Pen Colour } 
 Image1.Canvas.TextOut(10, 40, 'Hello World'); 
end; 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
27
Ngôn ngữ Pascal 
Khu vực này giới thiệu những kiến thức cơ bản của Pascal để lập trình Delphi (vì Delphi 
cũng do Borland sản xuất nên các lệnh cũng tương tự như Pascal) 
Các kiễu dữ liệu. 
Những chương trình được sử dụng để xử lý dữ liệu. Sau đây là những kiểu dữ liệu 
để xây dựng thường dùng trong Pascal. Có một số thường rất ít sử dụng. Khi cất 
dữ những dữ liệu quan trọng để lựa chọn đúng những dữ liệu đó. 
Integer (số nguyên) Là những số như12 or -22 
 -32768 tới 32767 là phạm vi sử dụng. 
Real (số thực) Những số thập phân như 22.7 or -0.0032 
Char (kí tự) Những đặc tính của các kí tự. 
String[20] (chuỗi) Cất giữ những số hay văn bản. 
 Trong ví dụ này lên tới 20 kí tự có thể cất giữ. 
Boolean (logic) Giá trị True or False (Đúng or Sai). 
Các Biến. 
Variables are like named pigeon holes where data can be stored. Biến có những 
kiểu đặc biệt như trên. Bạn phải cất giữ đúng kiểu trong mỗi biết. 
Sử dụng tên bất kì để đại diện. Điều này giúp cho chương trình dễ dàng hơn. 
Good examples VAT_Rate, dayOfWeek, TAX_Band 
Bad Examples X, L, Lemming. 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
28
Các lệnh gán giá trị 
Đây là làm sao những giá trị được đặt vào trong những biến(pigeon holes). Trong 
ví dụ dưới, ở đây có các biến là X, sname và ok. Kí tự “:=” là đọc, trong tiếng anh, 
là becomes (trở thành). 
X := 3; X trở thành (là ) 3. 
 Cất giữ 3 vào trong biến X. 
sname := ‘Bloggs’; sname là Bloggs. 
 Cất giữ Bloggs vào trong biến sname. 
ok := True ok là True. 
 Cất True vào ok. 
Những đối tượng. 
Delphi là xây dựng đối tượng chương trình. Đối tượng này có thể sở hữu or chứa 
đựng đối tượng khác. Đối tượng có thuộc tính của nó. Trong ví dụ dưới đây 
 Form1.Label1.Caption := ‘Hello World!’; 
Form1 là 1 đối tượng. Form1 chứa đối tượng khác gọi là Label1. Label1 có 1 
thuộc tính gọi là Caption. Đoạn text ‘Hello World!’ được cất vào thuộc tính 
Caption của Label1. Caption là một biến để cất giữ chuỗi text. Bạn không thể cất 
giữ các sô nguyên vào trong 1 Caption trừ khi nó được chuyển đổi vào một chuỗi 
trước đó. 
Những thủ tục. 
Những thủ tục như những chương trình nhỏ bên trong một chương trình. Những 
thủ tục được sử dụng để phá vở chương trình lớn và cho nó vào chương trình nó 
trong các bit. những thủ tục cho phép bạn thiết kế những chương trình bên trong 
được Modular. Điều này dễ dàng kiểm tra lỗi, kiểm tra chương trình, thiết kế, ghi 
chương trình nào đó. Đây là các trình bày các thủ tục 
 Procedure Lemming; 
 Begin 
 Several lines go in here. 
 End; 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
29
Những sự kiện. 
Sự kiện là những hành động như bấm nút, click chuột.... Delphi được thiết kế để 
trả lời những sự kiện này. Để làm điều này bạn phải viết những bộ xử lý sự kiện. 
Bô xử lý sự kiện. 
Đây là những thủ tục để đáp lại những sự kiện tương ứng. Chẵn hạn, thủ tục bên 
dưới trả lời tới Form1 khi Button1 được click. Trong ví dụ này, khi sự kiện xuất 
hiện, dạng khác gọi là tlightForm được hiện ra. 
 procedure Form1.Button1Click(Sender: TObject); 
 begin 
 tlightForm.Show 
 end; 
Bình luận. 
Pascal programs are usually heavily annotated with text based comments that act as 
reminders to the programmer of what is going on within the program. This is done 
so the programmer can still understand the program after not looking at it for a year 
or two. It is also done so a new programmer can take over from the original one 
when he or she moves to a new job. 
BAD COMMENTS simply repeat the code. 
GOOD COMMENTS explain what is going on and why. 
X := 3; { X Becomes 3 (This is a bad comment) } 
dayOfWeek := 3; { Store the third day (Wed) into dayOfWeek } 
 { This is a good comment } 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
30
Sự nối tiếp. 
Đây là cách thực hiện biến đổi chương trình nối tiếp nhau theo một trình tự định 
sẵn và không lặp lại. Một ví dụ để làm rõ. 
Form1.Color := clGreen; { Nền của form màu xanh } 
Total := 0; { Tổng cộng được cất ở đây } 
Average := 0; { Trung bình cất ở đây. } 
Bên dưới là sơ đồ cấu trúc Jackson thể hiện sự nối tiếp đó 
Sự chọn lọc. 
Đây là sự quyết định bên trong chương trình. Trong Pascal, những quyết định sử 
dụng lệnh If. Chẵn hạn mã bên dưới đọc như sau trong tiếng Anh. Nếu màu của 
Form1 là màu đỏ thì làm cho màu của Form1 đổi thành màu xanh lá cây. 
 If Form1.Color = clRed then 
 Begin 
 Form1.Color := clGreen; 
 End; 
 If có thể sử dụng phức tạp hơn – ví dụ 
 If Form1.Color = clRed then 
 Begin 
 Form1.Color := clGreen; 
 End 
 Else 
 Begin 
 Form1.Color := clRed; 
 End; 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
31
 Nếu Form1 là màu đỏ thì đổi thành xanh lá cây. Nếu nó là màu khác tức không 
phải màu đỏ thì cho nó thành đỏ. Lệnh If có thể kết hợp một cách phức tạp hơn. 
 If Form1.Color = clRed then 
 Begin 
 Form1.Color := clGreen; 
 End 
 Else If Form1.color = clGreen Then 
 Begin 
 Form1.color := clBlue; 
 End 
 Else 
 Begin 
 Form1.Color := clRed; 
 End; 
 Lệnh If này có thể lồng vào trong lệnh If khác. Trong ví dụ bên dưới, bạn ngăn 
ngừa chia cắt bằng zero. 
 If Op = ‘Divide’ then 
 Begin 
 If N2 = 0 then 
 Begin 
 messageDlg( 
 ‘You can not divide by zero.’, 
 mtWarning, [mbOK], 0); 
 End 
 Else 
 Begin 
 Answer := N1 div N2; 
 End 
 End; 
Sơ đồ cấu trúc Jackson thể hiện sự chọn lọc này. 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
32
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
33
Vòng lặp. 
Có ba cách làm cho chương trình lặp lại. 
WHILE Repeat Zero of More times. 
REPEAT Repeat One or More times. 
FOR Lặp lại 1 số lượng thời gian biết trước. 
Ví dụ: 
 FOR 
 For I := 1 To 100 Do { Repeat 100 times. } 
 Begin 
 Label1.Caption := IntToStr(I); 
 Label1.Update 
 End; 
 WHILE 
 While NOT allSorted Do { Keep going until it is finished } 
 Begin 
 SortTheStuff; 
 End; 
 DO 
 Do { Keep going until Finished } 
 allThisStuff; { Unusual because Begin } 
 andAllThis; { and End are not needed } 
 Until Finished; 
 FOR 
 For Ch := ‘A’ To Z Do 
 Begin 
 Label1.Caption := CharToStr(I); 
 Label1.Update 
 End; 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
34
 FOR Backwards 
 For I := 100 DownTo 1 Do 
 Begin 
 Label1.Caption := IntToStr(I); 
 Label1.Update 
 End; 
 For Ch := 'Z' DownTo 'A' Do 
 Begin 
 Label1.Caption := CharToStr(Ch); 
 Label1.Update 
 End; 
Sơ đồ cấu trúc Jackson cho vòng lặp 
Chuỗi văn bản 
Từ ‘Hello’ là chuỗi text. Cần sáu byte để hiển thị. Chiều dài của văn bản được cất 
giữ từ vị trí số 0. những thuộc tính được cất giữ trong những byte kế tiếp từ 1- 5. 
0 1 2 3 4 5 6 7 8 9 
Length 
5 H e l l o Wasted Space 
 Để cất giữ ‘Fred Bloggs’ cần 12 Bytes. 
11 F r e d B l o g g s 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
35
Hàm: 
Thường dùng để tính toán hoặc sản sinh ra dữ liệu chứa trong một kết quả riêng 
biệt. Ở đây là ví dụ về các hàm. 
Sum := Add(N1, N2); { Một cách để thêm 2 số # nhau} 
Text := Join(FirstBit, SecondBit); 
Bigger := Max(N1, N2); { Trở lại nếu có bất cứ giá trị nào lớn hơn N1 or N2} 
 Đây là ví dụ về hàm dùng để chuyển đổi một đặc tính đơn vào trong chuỗi văn bản. 
Nó được viết và bình luận trong thái độ phê chuẩn. 
{ 
 Definition String := CharToStr(Char) 
 Input Hàm này dùng kí tự đơn cho đầu vào (Ch). 
Process Đặc tính nhập vào xử lý bằng cách cất giữ 
 tại một vị trí trong chuỗi (S). Tại vị trí Zero 
 chuỗi (S) có chiều dài (1) được cất giữ 
Output Đầu ra chuỗi kí tự đơn chứa Ch. 
} 
Function TForm1.CharToStr(Ch : Char) : String; 
Var S : String; 
Begin 
 S[0] := Chr(1); { Cất giữ độ dài xâu tại posn 0 } 
 S[1] := Ch; { Cất giữ Ch tại posn 1 } 
 CharToStr := S { Trả lại kết quả} 
End; 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
36
Logic 
AND, OR, NOT, XOR (VÀ, HOẶC, KHÔNG, XOR) 
Những cái này dùng để sử dụng với If, While và Do. Rõ ràng trong tiếng Anh 
chúng có nghĩa cho nhau phải không bạn? Chúng sẽ dễ học nếu thể hiện theo kiểu 
bảng. 
IF A AND B Then Nếu cả A và B đúng, khi đó. 
IF A OR B Then Một trong A hoặc B phải đúng. 
While NOT Done Do Nếu nó đúng thì làm cho nó sai 
 và nếu sai thì làm cho nó đúng (^_^). 
If A XOR B Then Nó đúng hoặc cái khác đúng nhưng không phải cả 2 
 và không phải là không đúng. (???Bạn hiểu không???) 
Câu tiếng Anh của nó là vầy, có ai dịch giúp với: 
One or other must be true but not both and not neither
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
37
Bảng giá trị 
0 là Sai (False). 
1 là đúng (True). 
AND 
A B Output 
0 0 0 
0 1 0 
1 0 0 
1 1 1 
OR 
A B Output 
0 0 0 
0 1 1 
1 0 1 
1 1 1 
XOR 
A B Output 
0 0 0 
0 1 1 
1 0 1 
1 1 0 
NOT 
A Output 
0 1 
1 0 
Reviewed by NGUYEN, Ba Thanh 
Distributed by Diễn đàn Tin học –  
38
Ví dụ: 
 If (Button = mbLeft) AND (X = 20) Then 
 Begin 
 doThis; 
 End; 
 If (day = ‘Mon’) OR (day = ‘Tue) Then 
 Begin 
 doShopping 
 End; 
 While NOT Finished Do 
 Begin 
 doThis; 
 End; 
MỜI CÁC BẠN CHUYỂN QUA QUYỂN 2 ĐỂ HỌC 
BIÊN DỊCH: Lê Khắc Như 
Cảm ơn các bạn đã sử dụng 
Nếu bạn thấy có chỗ nào không đúng thì nhớ báo cho mình sửa lại nha 
Email: laptrinh04@yahoo.ca 
Website:  

File đính kèm:

  • pdfHướng dẫn lập trình Delphi - Quyển 1_Nhập môn.pdf
Tài liệu liên quan