
Cách Sử Dụng Slider Trong GUI Matlab 2016a
| Slider là gì?

Slider là một đối tượng được tích hợp trong lập trình giao diện GUI của phần mền Matlab. Slider cho phép bạn sử dụng chuột để kéo thanh scoll của Slider ở một mức giá trị nào đó mà bạn đã quy định trước. Bạn có thể nhìn hình dưới là sẽ hiểu.
Trong bài viết này VuTienIT cùng bạn học cách tạo cũng như cách sử dụng viết chức năng cho đối tượng này. Bạn có thể sử dụng công cụ này để áp dụng vào từng trường hợp mà bài toán của bạn đưa ra.

Về chức năng thì ta sẽ hiện thị các giá trị mà ta đã cho trước ra, hoặc bạn có thể nhập giá trị vào Edittext và kéo theo đó là thanh Scroll sẽ thay đổi theo.
Oke chúng ta cùng bắt đầu thôi.
| Cách tạo Slider trong GUI
Thì như thường lệ thì ta sẽ tiến hành tạo 1 giao diện và kéo Slider vào để sử dụng. Bạn có thể tạo giao diện như thế nào cũng được. Quan trọng bạn chú ý đến Tag của nó. Bạn đặt tên như thế nào cho dễ gọi trong Code là được.
Giả sử chúng ta tạo được một giao diện như ở hình dưới đây:

Bạn chú ý VuTienIT đánh ghi là Min Max bạn có thể gán giá trị nó vị dụ là
Min = 0; Max = 0;
Để thiết lập được giá trị cho nó thì bạn đúp vào Slider ở giao diện bạn để ý các giá trị sau

Bạn chú ý thiết lập giá trị ở vần SliderStep sao cho phù hợp. Khi bạn nhấn vào mũi tên ở Max và Min thì nó sẽ dịch chuyển bao nhiêu tùy vào bạn đặt giá trị ở đây VuTienIT để là 0.1. Nghĩa là mỗi lần dịch chuyển thì nó dịch 0.1
| Cách Sử dụng Slider trong GUI
Khi bạn đã thiết lập giá trị cũng như tạo giao diện mà thấy oke rồi thì ta tiến hành viết code. Như đã nói ở trên thì nhiệm vụ của chúng ta làm sao để Slider và Edittext trao đổi dữ liệu cho nhau được.
Bạn hãy nhấn chuột phải vào Slider => View Callbacks => Callback để viết chức năng cho nó.
1. Khi Kéo Thanh Scroll thì giá trị hiện ở Edittext
Oke. VuTienIT sẽ sử dụng hàm quen thuộc đó là get() để tiến hành lấy dữ liệu.

giatri = get(handles.slider1, 'value');
Lúc này giatri sẽ nhận về là 1 kiểu số.
set(handles.giatri, 'string', num2tr(giatri));
Trong đó:
- handles.giatri: giatri chính là Tag của Edittext
- num2tr: chuyển đổi kiểu số sang chuỗi của biến giatri
Khi bạn chạy trương trình nên thì bạn sẽ nhận được kết quả như hình dưới. Bạn nhấn vào mũi tên hay kéo thanh scroll thì giá trị ở Edittext hiện thị theo. Trông rất là đẹp đúng không?

Nếu bạn nào tinh ý thì bạn có thể thấy. Khi chạy trương trình nên thì giá trị mặc định chưa được hiện thị nên ở ổ Edittext cho chúng ta. Vậy làm sao để cho nó hiện nên? Ở bài viết Làm Quen Giao Diện GUI Trong Matlab. VuTienIT có nhắc đến bạn một Function có tên là tenFileM_OpeningFcn nằm ở tập tin .m bạn đang viết code rồi. Function có nhiệm vụ là khi bạn viết code ở đây thì khi chạy trương trình nên nó sẽ thực thi đoạn trong đấy đầu tiên.
Chính vì như vậy thì bạn hãy tìm đến Function đó và viết bên dưới đó dòng Code bên trên. Thì khi chạy trương trình nó sẽ thực thi các câu lệnh đó đầu tiên đồng nghĩa với việc giá trị mặc định sẽ được hiện nên cho bạn.
giatri = get(handles.slider1, 'value'); set(handles.giatri, 'string', num2tr(giatri));

Như vậy là bạn đã hoàn thành công đoạn thứ nhất rồi đó.
2. Nhập giá trị ở Edittext thì thanh Scroll chạy theo
Bậy giờ ta sẽ xử lý trường hợp này. Bạn hãy nhấn chuột phải vào Edittext => View Callbacks => Callback để viết sự kiện khi nhấn Enter cho nó.
giatrimoi = get(handles.giatri, 'string');
Câu lệnh trên có nghĩa là ta sẽ lấy giá trị ở Tag giatri của Edittext và gán vào giatrimoi
giatrimoi = str2num(giatrimoi); if (giatrimoi < 10) & (giatrimoi >=0) set(handles.slider1, 'value', num2tr(giatrimoi )); else msgbox('Nhap gia tri trong khoang tu 0-10'); end

Khi có được giá trị đó rồi thì ta gán vào slider1 bằng câu lệnh trên.
Bạn cần đặt điều kiện để bắt sự kiện người ta nhập vào trong khoảng giá trị từ 0 đến 10. Vì trên ta sét là Max = 10 cũng như Min = 0 rồi mà. Nếu ta không sét điều kiện cho nó mà khi người nhập giá trị vào ví dụ là 11 chẳng hạn thì lập tức slider sẽ bị biến mất.
Như vậy là xong rồi đó!
Tổng Kết:
Trên đây VuTienIT đã hướng dẫn bạn cách sử dụng đối tượng Slider có trong Matlab. Bạn có thể sử dụng cho nhiều trường hợp khác nhau. Trong bài viết sau VuTienIT sẽ hướng dẫn bạn cách áp dụng Slider và đồ thị vào nhau. Bạn nên tìm hiểu lại bài viết vẽ đồ thị trong Matlab. Bởi vì trong bài viết sau thì những giao diện đó sẽ không hướng dẫn lại để tránh lãng phí thời gian.