Sử dụng công cụ GUI Layout thiết kế giao diện trong Matlab

Sáng kiến được viết theo hình thức một sách chuyên đề gồm 3 chương,

và 2 mục:

Mở đầu

Chương I. Cơ sở lý luận và thực tiễn

Chương II. Phần mềm Matlab

Chương III. Ứng dụng phần mềm Matlab vào giảng dạy vật lý lớp 12

Và cuối cùng là mục tổng kết, và kiến nghị

pdf6 trang | Chuyên mục: MATLAB | Chia sẻ: dkS00TYs | Lượt xem: 2944 | Lượt tải: 4download
Tóm tắt nội dung Sử dụng công cụ GUI Layout thiết kế giao diện trong Matlab, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
SỬ DỤNG CÔNG CỤ GUI LAYOUT 
THIẾT KẾ GIAO DIỆN TRONG MATLAB 
Công cụ GUI 
Để mở GUI Layout, từ cửa sổ lệnh của MatLab (MATLAB Command Window), chọn menu File > 
Show GUI Layout Tool. Cửa sổ GUI Layout sẽ được kích hoạt: 
Để tạo cửa sổ cho ứng dụng, click vào button “Add Figure”. 
Các nút lệnh: 
Axis 
Hệ trục tọa độ 
Static text: Tạo văn bản tĩnh, thường dùng cho các nhãn (label) 
List box: Liệt kê một danh sách 
Check box:Hộp kiểm tra 
Scroll bar: Thanh trượt 
Push button:Nút lệnh 
Edit box: Hộp soạn thảo 
Popup menu 
Radio button 
Phạm 
Thế 
Bảo 
Frame 
Để tạo một đối tượng trên cửa sổ thiết kế, ta dùng kỹ thuật drop-and-drag (kéo và thả): chọn một đối 
tượng trên cửa sổ Guide Control Panel, đối tượng tương ứng trên cửa sổ sẽ chìm xuống. Di chuyển 
mouse vào cửa sổ thiết kế, con trỏ mouse sẽ chuyển thành , click mouse vào vị trí cần đặt đối 
tượng. 
Một ví dụ về cửa sổ ứng dụng như sau: 
Một số thuộc tính cần chú ý của các đối tượng 
Để thay đổi thuộc tính các đối tượng trong cửa sổ, ta chọn menu Tools > Property Editor: 
Cửa sổ Property sẽ được kích hoạt: 
Các thuộc tính cần chú ý: 
Callback 
Thuộc tính này thường được sử dụng cho Push button, dùng để chỉ ra file .m nào sẽ được gọi khi tác 
động lên đối tượng. 
Tag 
Đặt nhãn cho thuộc tính, dùng để truy xuất đến đối tượng (nên chọn Tag cho các đối tượng phải 
khác nhau). 
Value 
Giá trị hiện thời của đối tượng (không dùng cho các đối tượng Edit Text, Static Text, Push Button và 
Frame). 
Enable 
Cho phép (on) hay cấm (off) người sử dụng tác động lên đối tượng 
String 
Chuỗi nhập sẽ hiển thị trên đối tượng. Đối với List box và Popup Menu, các giá trị sẽ được phân 
cách bằng dấu "|" 
TooltipString 
Nội dung Tool Tip (hướng dẫn nhanh khi di chuyển mouse trên đối tượng). 
Visible 
Hiển thị (on) hay ẩn (off) đối tượng trên cửa sổ thiết kế. 
BackgroundColor 
Chọn màu nền, thường dùng giá trị [0.8 0.8 0.8] cho Static Text, Radio Button và Check box để trùng 
với màu nền của cửa sổ. 
Đọc hay ghi thuộc tính các đối tượng 
Ta dùng các hàm set và get để xử lý thuộc tính của đối tượng H như sau: 
H = findobj('Tag','TagName'); 
set(H,'PropertyName1',PropertyValue1,'PropertyName2',PropertyValue2,…) 
V = get(H,'PropertyName') 
Giả sử ta thực hiện một cửa sổ ứng dụng như sau: 
Cửa sổ bao gồm các đối tượng với các thuộc tính: 
- EditText: 
'Tag' = 'EditTextSohang1' 
'FontName' = 'VNI-Times' 
- EditText: 
'Tag' = 'EditTextSohang2' 
'FontName' = 'VNI-Times' 
- EditText: 
'Tag' = 'EditTextKetqua' 
'FontName' = 'VNI-Times' 
- StaticText: 
'String' = 'Số hạng 1:' 
'FontName' = 'VNI-Times' 
- StaticText: 
'String' = 'Số hạng 2:' 
'FontName' = 'VNI-Times' 
- StaticText: 
'String' = 'Phép toán:' 
'FontName' = 'VNI-Times' 
- StaticText: 
'String' = 'Kết quả:' 
'FontName' = 'VNI-Times' 
- PopupMenu: 
'String' = 'cộng|trừ|nhân|chia' 
'FontName' = 'VNI-Times' 
'Tag' = 'PopupMenuPheptoan' 
- PushButton: 
'Callback' = 'tinh' 
'String' = 'Tính toán' 
'FontName' = 'VNI-Times' 
Lưu cửa sổ thiết kế (file example.m). 
Khi thực hiện chương trình, nhấn vào nút 'Tính toán', chương trình sẽ thực hiện gọi hàm tinh.m, nội 
dung chương trình tinh.m như sau: 
function tinh 
a = findobj('Tag','EditTextSohang1'); %Lấy handle của Edit Text Sohang1 
b = findobj('Tag','EditTextSohang2'); %Lấy handle của Edit Text Sohang2 
c = findobj('Tag','PopupMenuPheptoan'); %Lấy handle của PopupMenu 
d = findobj('Tag','EditTextKetqua'); %Lấy handle của Edit Text Ketqua 
sh1 = get(a,'String'); 
if isempty(sh1) 
sh1 = 0; 
else 
sh1 = str2num(sh1); %Số hạng 1 
end; 
sh2 = get(b,'String'); 
if isempty(sh1) 
sh2 = 0; 
else 
sh2 = str2num(sh2); %Số hạng 2 
end; 
pt = get(c,'Value'); %Tìm phép toán thực hiện 
switch pt 
case 1 
kq = sh1 + sh2; 
case 2 
kq = sh1 - sh2; 
case 3 
kq = sh1 * sh2; 
case 4 
if (sh2 == 0) 
set(d,'String','Lỗi trong phép chia'); 
return; 
end; 
kq = sh1 / sh2; 
end; 
kq = num2str(kq); 
set(d,'String',kq); %Đưa kết quả vào EditText Ketqua 

File đính kèm:

  • pdfSử dụng công cụ GUI Layout thiết kế giao diện trong Matlab.pdf