
Hướng Dẫn Tạo Menu Trong Lập Trình Giao Diện GUI Matlab
Trong bài viết trước chúng ta đã học cách vẽ đồ thị trong giao diện rồi thông qua đối tượng Axes. Thì trong bài viết này VuTienIT hướng dẫn bạn cách sử dụng cũng như ứng dụng đối tượng Pop-up Menu được tích hợp trong giao diện Guide của phần mền Matlab.

Để nhanh chóng cũng như đi vào thực tế thì VuTienIT xin được lấy lại ví dụ vẽ đồ thị ở bài viết trước để Demo cho bạn hiểu nhanh chóng. Chứ ngồi mà viết hướng dẫn lại cho bạn thì quả thực là hơi dài và nản lòng.Trước tiên bạn cần tìm hiểu chức năng của Pop-up Menu cũng như đối tượng này dùng để làm gì đã rồi chúng ta mới cùng nhau tìm hiểu cách sử dụng của nó!
| Pop-up Menu là gì?
Nếu như bạn hay vào các Website đăng ký một tài khoản người dùng (user) chẳng hạn. Thì có các mục họ bắt bạn chọn chẳng hạn như là ngày tháng năm sinh. Khi bạn click vào đó thì nó sẽ sổ ra các giá trị như là tháng 1, tháng 2, tháng 3,… hay được gọi là Select Box. Thì chính cái sổ xuống cho bạn chọn đó là Pop-up Menu.

Đối tượng này giúp bạn thu nhỏ các giá trị nào đó thuộc một nhóm lại. Chứ bình thường nếu bạn không sử dụng cái này thì bạn sẽ phải liệt kê ra hết tất cả như là các tháng từ 1 -> 12 chẳng hạn nên giao diện của bạn. Như vậy thì sẽ không hay, đẹp cũng như không được chuyên nghiệp cho lắm. Và chính Pop-up Menu sẽ đảm nhận nhiệm vụ thu gọn những giá trị mà bạn cho là cùng 1 nhóm vào 1 chỗ như vậy sẽ gọn và tiện lợi hơn rất nhiều.
Như những gì giải thích bên trên thì bạn đã hiểu được một phần nào chức năng của nó rồi phải không nào? Để bạn dễ hiểu hơn thì chúng ta cùng tiến hành đi vào một ví dụ cụ thể.
| Hướng dẫn sử dụng Pop-up Menu trong Matlab
Ok như bạn đã biết thì khi bạn chạy trương trình nên thì bạn click vào đối tượng đó thì nó sẽ chưa có giá trị nào đúng không? Vậy thì làm sao để bạn có thể thêm các giá trị vào đó? Cũng đơn giản thôi. Bạn làm như sau.
1. Thêm giá trị vào đối tượng Pop up Menu
Bạn có thể click đúp vào Pop-up Menu hoặc di chuột vào đối tượng đó click chuột phải và chọn Inspector. Bạn chú ý đến thuộc tính String. Bạn nhấn vào đó lập tức một bảng hiện ra cho bạn nhập giá trị vào.
Ở đây thì mỗi một giá trị thì sẽ phân biệt bằng cách xuống dòng hay nói cách khác đó là khi bạn nhập xong 1 giá trị muốn thêm vào thì bạn nhấn nút Enter trên bàn phím. Thì Matlab sẽ coi dòng bạn nhập đó là 1 giá trị. Bạn nhìn hình phía dưới bạn sẽ hiểu.

Và bạn sẽ được kết quả select các giá trị như hình phía dưới.

2. Các sử dụng Pop up Menu
Oke bây giờ là đến phần sử dụng nó như thế nào! Giả sử VuTienIT chọn sin và bấm vào Pushbutton (Ve do thi) thì sẽ vẽ hình sin nên Axes, hay cos, tan,… cũng vậy. Bạn có thể áp dụng cách dưới đây cho các trước hợp khác nhau của bạn chứ không nhất thiết chỉ vẽ được các hình đó. Ở đây mấu trốt vấn đề là chúng ta học được cách sử dụng của đối tượng này. Từ đó bạn có thể vận dụng kiến thức của mình vào từng trường hợp cụ thể.
Vậy một câu hỏi đặt ra làm sau để phần mền Matlab hiểu được ta đang chọn gia trị cos, sin, tan,… trong Pop-up Menu? Cũng không khó là lắm bạn hãy chú ý nhé!
Bạn nhấn chuột phải vào Ve Do Thi chọn View Call Backs và chọn Callback để tiến hành vào file .m và củ thể hơn vào function cửa sự kiện ta nhấn vào nút Ve Do Thi để viết code cho nó.

Bây giờ ta sẽ tiến hành lấy giá trị của đối tượng này. Như hình trên thì VuTienIT có đặt Tag của nó là luachon nên ta tiến hành gõ lệnh sau:
Đối với đối tượng Pop-up Menu này thì hơi đặc biệt một chút đó là bạn có thể lấy giá trị của thuộc tính String hay Value đều được cả.
luachon = get(handles.luachon, 'value'); %Gía trị trả về 1 hoặc 2 hoặc 3,... tuần tự từ trên xuống theo bạn chọn sin hay cos,... Hoặc Bạn có thể viết như thế này
luachon = get(handles.luachon, 'string');
%Gía trị trả về là tan, cos,...
Khi bạn biết được giá trị trả về là bao nhiêu rồi thì từ đó bạn hoàn toàn có thể điều khiển được trương trình theo ý của mình.
Bây giờ bạn có thể dùng if hay switch để bắt từng trường hợp 1. Có nghĩa là sau. Ví dụ bạn chọn sin và kết quả trả về là 1 thì bạn sẽ vẽ hình sin chẳng hạn. Các trường hợp khác thì tương tự. VuTienIT sẽ sử dụng switch (Vì có 4 trường hợp nên switch sẽ tốt hơn bạn có thể sử dụng câu điều kiện if)
switch luachon case 1 axes(handles.axes1); t = -pi : 0.1 : pi; plot(t, sin(t)); case 2 axes(handles.axes1); t = -pi : 0.1 : pi; plot(t, cos(t)); case 3 axes(handles.axes1); t = -pi : 0.1 : pi; plot(t, tan(t)); case 4 axes(handles.axes1); t = -pi : 0.1 : pi; plot(t, exp(t)); end % axes1: Là tên Tag của axes

Bạn có thể giữ lại các đồ thị đã vẽ trước đó hoặc không bằng câu lệnh ở trong mỗi Case của Switch
hold on Hoặc hold off
Như vậy bạn đã biết được công dụng của đối tượng này rồi đúng không nào? Nó cũng không quá khó khăn gì cả. Quan trọng bạn lấy được giá trị của nó từ đó áp dùng từng trường hợp cụ thể.
Tổng Kết:
Trên đây VuTienIT đã giới thiệu tác dụng, chức năng cũng như cách sử dụng đối tượng Popup Menu. Hi vọng bài viết này sẽ giúp ích cho bạn trong quá trình học tập. Chúc bạn thành công!
Cám ơn tác giả. Các bài viết rất hữu ích!