You are on page 1of 13

ÔN TẬP

LẬP TRÌNH ỨNG DỤNG TRONG KỸ THUẬT


2. Phần C# (Windows Forms Application):
2.1 Form:
a) Thuộc tính (Properties):

 Text : thuộc tính cho phép chỉnh sửa tiêu đề của Form. Text có kiểu dữ liệu là String
VD : this.Text = “Chuong trinh lap trinh giao dien”;
 Size : thuộc tính cho phép chỉnh sửa kích thước của Form.
VD : this.Size = new System.Drawing.Size(300,300);
 Location : thuộc tính cho phép chỉnh sửa vị trí xuất hiện của Form.
VD : this.Location = new System.Drawing.Point(20,20);
 Font.
 Enabled.
 Backcolor.

b) Sự kiện (Events):
MouseMove : Sự kiện xảy ra khi di chuyển con trỏ chuột trên Form.

MouseClick : Sự kiện xảy ra khi click chuột trên Form.

MouseDoubClick : Sự kiện xảy ra khi click đúp chuột trên Form.

MouseEnter : Sự kiện xảy ra khi di chuyển con trỏ chuột từ vùng bên ngoài vào vùng bên trong của
Form.

MouseLeave : Sự kiện xảy ra khi di chuyển con trỏ chuột từ vùng bên trong của Form ra vùng bên
ngoài.

MouseDown : Sự kiện xảy ra khi bắt đầu nhấn chuột trên Form.

MouseUp : Sự kiện xảy ra khi bắt đầu thả phím sau khi click chuột trên Form.

Những sự kiện liên quan đến bàn phím (Key)

KeyPress : Sự kiện xảy ra khi nhấn phím bất kì trên bàn phím trong khi đang chọn Form.

KeyDown : Sự kiện xảy ra khi bắt đầu nhấn phím.

1
KeyUp : Sự kiện xảy ra khi bắt đầu thả phím sau khi nhấn.

Những sự kiện thường gặp khác:

Move : Sự kiện xảy ra khi di chuyển Form.

Load : Sự kiện xảy ra khi tải (Load) Form (đây là sự kiện xảy ra ngay sau khi bắt đầu chạy chương
trình).

Resize : Sự kiện xảy ra khi thay đổi kích thước của Form.

2.2 Button:
a) Thuộc tính (Properties):
Name : thuộc tính cho phép chỉnh sửa tên của Button; các thuộc tính khi truy xuất đều phản thông qua
thuộc tính này.

VD : this.button1.Name = “B1”; //Thay đổi tên button thành B1


Text : thuộc tính cho phép chỉnh sửa dòng kí tự hiển thị trên button; Text có kiểu dữ liệu là String.

VD : this.B1.Text = “Start”; //Thay đổi dòng kí tự xuất hiện trên button B1


Visible : thuộc tính cho phép ẩn/hiện button trên form; Visible có kiểu dữ liệu là bool.

VD : this.B1.Visible = false; // Làm ẩn button1 trên Form.


Enable : cho phép tương tác/không tương tác button trên form; Enable có kiểu dữ liệu là bool.

VD : this.B1.Enable = false; // Không cho phép tương tác với button.


b) Sự kiện (Events):
Click : Sự kiện xảy ra khi click chuột trên Form.

Một số các sự kiện cơ bản khác liên quan đến tác động chuột và phím lên Button giống như Form.

2.3 Label và Textbox:


a) Thuộc tính (Properties):
Name, Visible, Enable : giống Button.

Text : thuộc tính quản lý nội dung của Textbox; Text có kiểu dữ liệu là String.

VD : this.TB1.Text = “123”; // Nội dung xuất hiện trên textbox TB1 là 123.
ReadOnly : thuộc tính cho phép nhập/xuất dữ liệu ra Textbox; ReadOnly có kiểu dữ liệu là bool.

VD : this.TB1.ReadOnly = false; // không cho phép nhập dữ liệu vào textbox.


MaxLength : số lượng kí tự tối đa cho phép nhập vào Textbox; MaxLength có kiểu dữ liệu là int.
2
VD : this.TB1.MaxLength = 10; // cho phép nhập tối đa 10 kí tự.
Multiline : thuộc tính có kiểu bool cho phép thay đổi kiểu nhập liệu trên textbox: false trong trường hợp
nhập dữ liệu trên 1 dòng, true khi nhập nhiều dòng (cho phép nhấn Enter để xuống dòng).

VD : this.TB1.Multiline = true; //Thay đổi kiểu nhập liệu nhiều dòng.


PasswordChar : thuộc tính cho phép sử dụng textbox làm ô nhập password (ẩn password) và thay thế
các kí tự nhập vào bằng 1 kí tự do người lập trình quy định. PasswordChar có kiểu dữ liệu là Character.

VD : this.TB1.PasswordChar = ‘&’; //Dùng kí tự & để thay thế khi nhập pass.


b) Sự kiện (Events):
TextChanged : sự kiện xảy ra khi chuỗi kí tự hiển thị trên TextBox bị thay đổi (VD như người dùng
nhập thêm/xóa bớt đi 1 kí tự).

Một số các sự kiện cơ bản khác liên quan đến tác động chuột và phím giống như Form.

2.4 Checkbox và RadioButton:


a) Thuộc tính (Properties):
Name, Visible, Enable : giống Button.

Text : thuộc tính cho phép chỉnh sửa dòng kí tự hiển thị bên cạnh Checkbox;

VD : this.ChB1.Text = “Lua chon 1”;


Checked : Đây là thuộc tính quan trọng nhất của CheckBox cho biết trạng thái hiện tại của Checkbox
(false có nghĩa là trạng thái của checkbox là không được chọn và true là được chọn). Chúng ta cũng có
thể dùng câu lệnh để thay đổi thạng thái của Checkbox

VD : this.ChB1.Checked = true;
b) Sự kiện (Events):
CheckedChanged : sự kiện xảy ra khi ta thay đổi trạng thái của CheckBox.

Một số các sự kiện cơ bản khác liên quan đến tác động chuột và phím giống như Form.

2.5 Listbox và Combobox:


a) Thuộc tính (Properties):
Name, Visible, Enable : giống Button.

Các thuộc tính quan trọng khác của ListBox.

Items : thuộc tính quan trọng nhất của ListBox: quản lý các phần tử thuộc ComboBox. Các tương tác
với ListBox hầu hết đều thông qua Items.

3
Items.Count: Trả về số lượng phần tử có trong ListBox.

Items[i] : truy xuất đến phần tử thứ i của ListBox.

Items.Add(): Thêm phần tử vào ListBox.

Items.Remove(): Xóa phần tử khỏi ListBox.

Items.Clear(): Xóa toàn bộ phần tử của ListBox.

SelectedItem : Trả về giá trị của phần tử đang được chọn.

VD : this.TB1.Text = this.CB1.SelectedItem;

SelectedIndex: Trả về chỉ số của phần tử đang được chọn trong ListBox. Chỉ số phần từ là một số
nguyên bắt đầu từ 0. Hoặc thiết lập để định vị phần tử được chọn thông qua chỉ số

VD : this.TB1.Text = Convert.ToString(this.CB1.SelectedIndex);

SelectionMode : Cho phép thay đổi cách chọn phần tử của ListBox (mặc định là One: chỉ được chọn 1
phần tử).

VD : this.LB1.SelectionMode = System.Windows.Forms.SelectionMode.One;
b) Sự kiện (Events):
SelectedIndexChanged : sự kiện xảy ra khi ta thay đổi lựa chọn các phần tử của Listbox.

Một số các sự kiện cơ bản khác liên quan đến tác động chuột và phím giống như Form.

2.6 Timer:
a) Thuộc tính (Properties):
Name : thuộc tính cho phép chỉnh sửa tên của timer; các thuộc tính khi truy xuất đều phản thông qua
thuộc tính này.

VD : this.timer1.Name = “T1”; //Thay đổi tên timer thành B1


Interval : thuộc tính cho phép cài đặt thời gian đếm cho timer (tính theo mili giây); Interval có kiểu dữ
liệu là int.

VD : this.T1.Interval = 1000; //Thời gian cài đặt 1s (1000 ms).


Enable : cho phép kích hoạt/dừng timer; Enable có kiểu dữ liệu là bool.

VD : this.T1.Enable = true; // Kích hoạt timer.


b) Sự kiện (Events):
Timer chỉ có 1 sự kiện duy nhất:

4
Tick: Sự kiện xảy ra khi timer tràn.

2.7 Serial Port:


a) Thuộc tính (Properties):

Cũng như các đối tượng khác, chúng ta chọn SerialPort trong toolbox và thêm vào trong
Form. Với SerialPort ta cần quan tâm đến các thuộc tính thường dùng sau:

 Name: Tên gọi của SerialPort nhằm mục đích phân biệt với các đối tượng khác.

VD : this.serialPort1.Name = “SP1”; //Thay đổi tên thành SP1

 PortName: Có kiểu dữ liệu String, tên gọi của cổng COM sẽ dùng để kết nối (chúng ta
có thể xem các cổng COM trong Device Manager.

VD : this.SP1.PortName = “COM1”; //Kết nối theo cổng COM1

 BaudRate: Tốc độ truyền dữ liệu. Khi truyền dữ liệu thì tốc độ truyền dữ liệu của thiết bị
truyền và thiết bị nhận phải bằng nhau.

VD : this.SP1.BaudRate = 9600; //Tốc độ truyền 9600 bps.

 DataBits: Số lượng bit dữ liệu (bit Data) được truyền đi trong 1 gói truyền (package).

VD : this.SP1.DataBits = 8;

 Parity: thuộc tính quy định cách thức kiểm tra chẵn lẻ (Parity) trong khi truyền.

VD : this.SP1.Parity = System.IO. Ports.Parity.Odd;

 StopBits: Quy định độ rộng của Stop Bit, có 3 giá trị là bằng 1, 1.5 và 2 so với độ rộng
của bit data.

VD : this.SP1.StopBits = System.IO. Ports.StopBits.One;

 Open(): Lệnh mở Port. Trước khi truyền hay nhận dữ liệu thì phải mở Port và chỉ mở
Port 1 lần duy nhất.

VD : this.SP1.Open();

 Close(): Lệnh đóng Port. Lưu ý là chỉ được đóng những Port đã mở trước đó.
5
VD : this.SP1.Close();

 Write(), WriteLine(): Lệnh truyền dữ liệu.

VD : this.SP1.WriteLine("ABC");

 Read(), ReadLine(), ReadChar(), ReadByte(): Lệnh đọc dữ liệu.


 ReadExisting(): Lệnh đọc toàn bộ dữ liệu chứa trong Buffer.

2. Bài tập cơ bản Phần C# (Windows Forms Application):


Bài tập:
- Viết đoạn câu lệnh bằng ngôn ngữ C# thực hiện yêu cầu sau:
- Đọc giá trị nhập vào Textbox, chuyển sang giá trị số (số nguyên, số thực) để tính toán.
- Kiểm tra trạng thái của Checkbox, RadioButton.
- Thêm phần tử vào Listbox.
- Xóa phần tử của Listbox (xóa phần tử đầu, xóa phần tử cuối, xóa phần tử được chọn).
- Thay đổi giá trị phần tử của Listbox.
- Đếm số lượng phần tử của Listbox.
- Tìm kiếm phần tử trong Listbox.
- Kích hoạt và dừng Timer.
- Cài đặt thông số hoạt động cho Serial Port(Portname, Baudrate, DataBits, Stopbits, Parity).
- Mở port và đóng port cho Serial Port.
- Kiểm tra trạng thái của Serial Port (đang đóng port hay mở port).

- Các nội dung liên quan câu hỏi trắc nghiệm:


- Properties và Events của các đối tượng: button, textbox, checkbox, listbox, timer và serial port.
Câu 1:
Hãy cho biết kiểu dữ liệu thuộc tính của các đối tượng sau :
- CheckBox : a) Text b) Checked c) RightToLeft d) Visible
- Listbox: e) Name f) SelectedIndex g) Items h) Items.Count

VD:
Trong các thuộc tính (Properties) của Textbox, thuộc tính nào KHÔNG có kiểu dữ liệu là bool :
a. ReadOnly.

b. Visible.

6
c. TabIndex.

d. Enabled.

Câu 2:
Giải thích ngắn gọn các Events sau :
a) KeyDown b) MouseLeave c) Tick d) CheckedChanged
e) MoveMove f) TextChanged g) Load h) SelectedIndexChanged

VD:
Trong các sự kiện (Events) sau, sự kiện nào phát sinh khi di chuyển chuột trên Form :

a. Move.

b. MouseHover.

c. MouseLeave.

d. Tất cả đều sai.

Câu 3:
Cho biết tên của các Properties liên quan đến timer:
a) Thời gian đếm của timer.
b) Kích hoạt timer.
c) Dừng timer.
d) Ẩn timer.
VD:
Thuộc tính (Properties) cài đặt giá trị đếm của Timer là:
a. Enabled.

b. Tick.

c. Interval.

d. Tất cả đều sai.

Câu 4:
Cho đối tượng Serial Port (SP1) hãy cho biết thuộc tính (properties) để:
a) Cài đặt thông số hoạt động: tốc độ truyền, bit data, kiểm tra Parity , bit stop.
b) Kiểm tra trạng thái của Serial Port.

7
3. Một số câu hỏi trắc nghiệm:
PHẦN C#:

Câu 1: (0,25 điểm)

Trong các thuộc tính (Properties) của TextBox sau đây, thuộc tính nào có kiểu dữ liệu (data types) là
số nguyên (int) :
a. MaxLength.

b. PasswordChar.

c. Visible.

d. Size.

Câu 2: (0,25 điểm)

Cho đối tượng Listbox (LB1), câu lệnh nào sau đây là ĐÚNG :
a. this.LB1.Text = "35.5";

b. this.LB1.Items.Text = "35.5";

c. this.LB1.Items = "35.5";

d. Tất cả đều sai.

Câu 3: (0,25 điểm)

Trong các thuộc tính (Properties) sau, thuộc tính nào KHÔNG có kiểu dữ liệu là bool :
a. Checked.

b. Visible.

c. TabIndex.

d. Enabled.

8
Câu 4: (0,25 điểm)

Trong các sự kiện (Events) sau, sự kiện nào phát sinh khi chọn phần tử của Listbox :
a. CheckedChange.

b. TextChanged.

c. SelectedIndexChanged.

d. Tất cả đều sai.

Câu 5: (0,25 điểm)

Thuộc tính (Properties) nào sau đây là của Timer :


a. Size.

b. Text.

c. Location.

d. Tất cả đều sai.

Câu 6: (0,25 điểm)

Thuộc tính (Properties) quy định tốc độ truyền dữ liệu của Serial Port là:
a. SpeedRate.

b. BitRate.

c. BaudRate.

d. Tất cả đều sai.

Câu 7: (0,25 điểm)

Cho đối tượng Serial Port, câu lệnh nào sau đây là SAI:
a. this.SP1.PortName = "Com1";

b. this.SP1.PortNames = "Com1";

c. Không câu lệnh nào sai.


9
d. Cả hai đều sai.

Câu 8:

Trong các sự kiện (Events) sau, sự kiện nào là KHÔNG THUỘC ListBox:
a. Load. b. MouseClick. c. SelectedIndexChanged. d. Tất cả đều sai.

Câu 9:

Thuộc tính (Properties) nào sau đây là của Timer :


a. Size. b. Text. c. Location. d. Tất cả đều sai.

Câu 10:

Trong các sự kiện (Events) sau, sự kiện nào là của CheckBox:


a. TextChanged. b. CheckChanged. c. MouseMove. d. Tất cả đều đúng.

Câu 11:

Trong các thuộc tính (Properties) của ListBox sau đây, thuộc tính nào có kiểu dữ liệu (data types) là
bool :
a. MultiColumn b. Visibled.

c. Enabled. d. Tất cả đều đúng.

Câu 12:

Cho đối tượng Listbox (LB1), câu lệnh nào sau đây là ĐÚNG :
a. this.LB1.Items.Count = "10"; b. this.LB1.Items.Count = 10;

c. this.LB1.Items.Count = '10'; d. Tất cả đều SAI.

Câu 13:

10
Trong các thuộc tính (Properties) sau đây, thuộc tính nào là của Listbox:
a. Checked. b. Multiline. c. ReadOnly. d. Tất cả đều sai.

Câu 14:

Trong các thuộc tính (Properties) của CheckBox sau đây, thuộc tính nào có kiểu dữ liệu (data types) là
bool :
a. Checked. b. Visible. c. Enabled. d. Tất cả đều đúng.

Câu 15:

Cho đối tượng Textbox (TB1), thuộc tính UseSystemPasswordChar có kiểu dữ liệu là :
a. bool. b. string. c. int d. Tất cả đều sai.

Câu 16:

Cho đối tượng Checkbox (CB1), trong các mệnh đề điều kiện if sau đây, mệnh đề nào là ĐÚNG :
a. if(this.CB1.Checked). b. if(this.CB1.Checked == true)

c. if(this.CB1.Checked == false). d. Tất cả đều đúng.

Đoạn chương trình sau dùng cho câu 17,18:


Cho 2 đối tượng Checkbox (CB1) và Textbox (TB1) :
int t = 0;
this.TB1.Text = “123”;
if (this.CB1.Checked == true)
{
t++;
this.TB1.Text = this.TB1.Text + Convert.ToString(t);
}
else
{
11
t++;
this.TB1.Text = Convert.ToString(t);
}

Câu 17:
........Nếu CB1 được chọn (Check) giá trị của TB1 sau khi kết thúc đoạn chương trình trên là:
a. “1231” b. “1123”
c. “123” d. Tất cả đều sai.

Câu 18:
Nếu CB1 không được chọn (Uncheck) giá trị của TB1 sau khi kết thúc đoạn chương trình trên là:
a. “1231” b. “1123”
c. “123” d. Tất cả đều sai.

Đoạn chương trình sau dùng cho câu 19,20,21:


Cho 2 đối tượng Listbox (LB1) và Textbox (TB1), ban đầu Listbox chưa có giá trị :
int t = 0;
this.TB1.Text = “0”;
for( int i = 0; i< 5;i++)
{
t++;
this.LB1.Items.Add(this.TB1.Text + Convert.ToString(t));
}

Câu 19:
Giá trị của t sau khi kết thúc đoạn chương trình trên là:
a. 4 b. 5
c. 6 d. Tất cả đều sai.
Câu 20:
Giá trị của của phần tử đầu tiên trong Listbox LB1 là:
a. 0 b. 1
c. 2 d. Tất cả đều sai.
Câu 21:
Giá trị của của phần tử cuối cùng trong Listbox LB1 là:

12
a. 03 b. 04
c. 05 d. Tất cả đều sai.

Đoạn chương trình sau dùng cho câu 22,23,24:


Cho đối tượng Listbox (LB1), ban đầu Listbox chưa có giá trị:
int t = 0;
for( int i = 0; i< 5;i++)
{
this.LB1.Items.Add(Convert.ToString(i));
}
for( int i = 0; i< 4;i++)
{
if(i%2 == 0) this.LB1.Items.Add(Convert.ToString(i));
else this.LB1.Items.RemoveAt(0);
}

Câu 22:
Số lượng phần tử của Listbox sau khi kết thúc đoạn chương trình trên là:
a. 4 b. 5
c. 6 d. Tất cả đều sai.

Câu 23:
Giá trị của của phần tử thứ 2 trong Listbox LB1 (Items[1]) là:
a. 1 b. 2
c. 3 d. Tất cả đều sai.

Câu 24:
Giá trị của của phần tử cuối cùng trong Listbox LB1 là:
a. 1 b. 2
c. 3 d. Tất cả đều sai.

13

You might also like