You are here
Home > Lập Trình > Tự Học Matlab > Matlab Nâng Cao > Lập Trình GUI > Lập Trình Gui Matlab – Lập Trình Giao Diện Vẽ Đồ Thị Trong Matlab GUI

Lập Trình Gui Matlab – Lập Trình Giao Diện Vẽ Đồ Thị Trong Matlab GUI

thuc-hanh-ve-do-thi-trong-gui-matlab

Thực Hành Lập Trình Giao Diện Vẽ Đồ Thị Trong Matlab GUI

Trong bài viết trước VuTienIT đã nói thì hôm nay chúng ta đã bắt tắt vào thực hành áp dụng sử dụng đối tượng Slider để vẽ một đồ thị nào đó. Bạn có thể xem lại 2 bài viết này trước khi bắt tay thực hành để hiểu rõ hơn vấn đề Sử Dụng SliderVẽ đồ thị

thuc-hanh-ve-do-thi-trong-gui-matlab
thuc-hanh-ve-do-thi-trong-gui-matlab

Hôm nay chúng ta sẽ kết hợp ở các kiến thức chúng ta đã học để làm được ví dụ hình dưới đây. Thực chất thì nó cũng không khó lắm đâu. Ta chỉ ôn lại kiến thức cũ về cách sử dụng các đối tượng để bạn nắm vững thôi.

huong-dan-ve-do-thi-trong-matlab
huong-dan-ve-do-thi-trong-matlab

Bạn hãy tự tay thiết kế giao diện như vậy xem có làm được không. Khi bạn tạo GUI xong thì ta tiến hành viết code cho nó.

Chú thích: VuTienIT sẽ không viết lại Code cũ của các bài trước. Bạn hãy xem lại và tự viết lại.

Như trên thì Slider có Tag là biendo Bây giờ bạn hãy mở đoạn code function của Pushbutton có String là Ve do thi (tag: pushbutton1) ở file .m và thêm dòng code dưới đây

biendo = get(handles.biendo, 'value');

Câu lệnh trên giúp bạn lấy được giá trị của Tag biendo của đối tượng Slider. Khi có được giá trị rồi  thì ta thay đổi lại đoạn code

plot(t, sin(t));

Thành

plot(t, biendo  * sin(t));

Đối với Cos, tan,… thì bạn cũng làm tương tự.

ve-do-thi-sin-cos-tan-trong-gui-matlab
ve-do-thi-sin-cos-tan-trong-gui-matlab

Sau khi hoàn thành bạn tiến hành chạy trương trình xem kết quả. Thì cũng giống các bài trước thì ta sẽ thêm đối tượng Edittext. Đối tượng này sẽ có nhiệm vụ đó là hiện thị thông số khi bạn thay đổi slider hay nó cách khác đó là khi nhập một số nào đó vào đối tượng này thì lập tức  thanh scroll của slider sẽ thay đổi theo.

Gía trị bạn nhập vào phải nằm trong khoảng Min và Max của Slider

edittext-matlab
edittext-matlab

Bạn hãy mở đế Function của đối tượng tag hienthi và thêm các dòng code dưới đây.

biendomoi = get(handles.hienthi, 'string');

biendomoi = str2num(biendomoi);

set(handles.biendo, 'value', biendomoi);
hienthi_callback-matlab
hienthi_callback-matlab

Tiếp theo bạn tìm đến Function của biendo_Callback và thêm 3 dòng dưới đây vào. Nhiệm vụ 3 dòng này là khi bạn keo thanh scroll thì ô Edittext sẽ có giá trị hiện thị thay đổi theo

biendo = get(handles.biendo, 'value');

biendo = num2str(biendo);

set(handles.hienthi, 'string', biendo);
biendo_callback
biendo_callback

Khi viết xong bạn hãy chạy trương trình nên và test xem đã được chưa.

Để khi bạn khởi chạy nên thì ô Edittext sẽ hiện thị số luôn thì bạn chỉ cần copy 3 dòng ở  Function biendo_Callback vào Function vidu4_OpeningFcn.

openingfcn-gui-matlab
openingfcn-gui-matlab

Đặt câu hỏi khi thoát trương trình.

Oke ở các bài viết trước thì VuTienIT chưa nói đến đối tượng Pushbutton có String là Close. Thì nhiệm vụ của nút này khi bạn bấm vào thì trương trình sẽ đóng lại. Bạn chỉ cần thêm 1 dòng code dưới đây vào Function của nó là được.

Close

Nhưng bạn thấy đấy. Khi chạy trương trình nên và nhấn vào nút này nó sẽ đóng. Bạn có để ý đến một số phần mền nào đó khi bạn sử dụng mà nhấn vào dấu X chẳng hạn thì có một câu hỏi như là “Bạn có muốn thoát trương trình không?”. Vậy làm sau để áp dụng câu đó vào bài tập của ta? Thì cũng khá đơn giản. Tại Function đó bạn hãy làm như sau

choice = questdlg('Would you like to close?', ...

                  'Choice menu', ....

                  'Yes', 'No', 'Yes');
questdlg-gui-matlab
questdlg-gui-matlab

Bạn có thể việt hóa các tự này cũng được tùy bạn. Bạn chỉ chú ý chỗ Yes Có nghĩa là khi hiện thị nên thì Yes sẽ được nổi bật. Bạn có thể điền là No cũng được. Bạn chỉ cần hiểu đơn giản là mong muốn người dùng click Yes hoặc No. Thường dùng để giữ chân người dùng không tắt trương trình đi.

Bạn thắc mắc là sao ta nhấn vào Yes, No không có tác dụng. Xin thưa với bạn là bạn có để ý đến nó gán giá trị vào biến choice không? Bây giờ ta sử lý đến trường hợp người ta nhấn Yes hoặc No bạn gõ tiếp lệnh dưới đây vào.

switch choice

    case 'Yes'

        close

    case 'No'
end

Oke như vậy là xong rồi đó. Cũng khá là đơn giản phải không?

Tổng Kết

Trên đây chúng ta đã học được cách áp dụng các đối tượng với nhau một cách linh hoạt. Cũng như học được câu điều kiện khi người ta muốn thoát trương trình. Chúc bạn thành công!

0 0 bỏ phiếu
Đánh giá bài viết

Thủ Thuật Windows

Nếu như trong quá trình bạn tải file Active về mà bị thông báo là "tệp chứa virus" và bị xóa thì hãy làm theo các bước sau trước khi tải về nhé:

Bước 1: Tắt Windows Defender (Win 10), bạn hãy làm theo các bước này để tắt Defender tạm thời nhé, sau khi Active xong, bạn có thể bật lại:
1. Mở ứng dụng Settings.
2. Trên cửa sổ Settings, bạn tìm và click chọn Update & security.
3. Tiếp theo click chọn Windows Defender.
4. Chuyển trạng thái tùy chọn Real-time protection sang OFF.

Bước 2: Ngoài ra, Nếu trong quá trình tải về mà bạn dùng trình duyệt Chrome hay Cốc Cốc thì sau khi file tải xong không được bấm "Hủy" mà bạn nên bấm tổ hợp phím “Ctrl + J” để vào phần quản trị download, tìm đến file mà bạn tải rồi click vào ô “Khôi phục tệp…” nhé.

Có một số trường hợp file Active tải về mặc định bị xóa, nếu gặp trường hợp này bạn cần chắc chắn rằng Windows Defender hay phần mềm diệt virus trên máy đã được tắt. Sau đó bạn bấm “Ctrl +J“, tại link tải active mà bạn vừa tải về đã bị xóa, bạn hãy click vào đó để trình duyệt tải lại một lần nữa và lần này là sẽ thành công.

BQT: VuTienBlog

Subscribe
Thông báo
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả các ý kiến
Top
0
Bác có thắc mắc? Nhấn vào đây để bình luận!x
()
x