چگونه یک کامپوننت EditField را در متلب اضافه کنیم؟
موسسه پایا پروژه به عنوان متصدی انجام پروژه های متلب وظیفه ی خود می داند که در راستای آموزش نرم افزار متلب گام های موثری را بردارد. با توجه به اینکه یک دوره آموزشی متلب مستلزم تمرین و تلاش بسیار است. اما این موسسه تلاش می کند سهم کوچکی در جهت یادگیری شما داشته باشد.
یک جزء EditField یا فیلد ویرایش در متلب یک کنترل رابط کاربری است که در انجام پروژه متلب به شما امکان می دهد متن را وارد و ویرایش کنید. این یک ابزار مفید برای ایجاد برنامه های کاربردی (GUI رابط کاربری گرافیکی) کاربر پسند است. در این مقاله نحوه افزودن کامپوننت EditField به یک رابط کاربری گرافیکی و نمونه هایی از کاربرد آن را توضیح خواهیم داد.
مراحل انجام پروژه متلب اضافه کردن یک کامپوننت EditField:
1. ایجاد یک رابط کاربری گرافیکی
برای افزودن یک جزء EditField به یک رابط کاربری گرافیکی، باید یک رابط کاربری گرافیکی از قبل ایجاد کرده باشید. اگر رابط کاربری گرافیکی ندارید، می توانید با دنبال کردن مراحل موجود در مستندات رسمی MATLAB، آن را ایجاد کنید.

2. اضافه کردن EditField:
میتوانید یک جزء EditField را با کشیدن نماد Edit Field” ” از صفحه “Palettes”در سمت راست ویرایشگر رابط کاربری گرافیکی به آن اضافه کنید. (ما یک جزء Edit Field برای متن و عدد داریم که می توانید بر اساس نیاز خود انتخاب کنید)

3. تغییر مکان و اندازه EditField :
بعد از اینکه مولفه EditField را به رابط کاربری گرافیکی خود اضافه کردید، می توانید اندازه آن را تغییر داده و به مکان مورد نظر منتقل کنید.

4. سفارشی کردن EditField:
برای سفارشی کردن مؤلفه EditField، میتوانید از پنجره Properties”” در سمت راست ویرایشگر رابط کاربری گرافیکی استفاده کنید. از قسمت Properties می توانید متن نمایش داده شده را ویرایش یا اندازه فونت، رنگ پس زمینه و سایر ویژگی ها را تغییر دهید.

کد کامپوننت EditField تولید شده بالا در پروژه متلب در زیر آورده شده است:
classdef app1 < matlab.apps.AppBase
ویژگی هایی که با اجزای برنامه مطابقت دارند%
properties (Access = public)
UIFigure matlab.ui.Figure
EditField matlab.ui.control.EditField
EditFieldLabel matlab.ui.control.Label
end
مقداردهی اولیه کامپوننت %
methods (Access = private)
ایجاد UIFigure و اجزا %
function createComponents(app)
Create UIFigure and hide until all components are created%
;app.UIFigure = uifigure(‘Visible’, ‘off’)
; app.UIFigure.Position = [100 100 640 480]
;’ app.UIFigure.Name = ‘MATLAB App
ساخت ادیت فیلد لیبل%
; app.EditFieldLabel = uilabel(app.UIFigure)
;’ app.EditFieldLabel.HorizontalAlignment = ‘right
;app.EditFieldLabel.Position = [141 189 56 22]
;’app.EditFieldLabel.Text = ‘Edit Field
ساخت ادیت فیلد لیبل %
;app.EditField = uieditfield(app.UIFigure, ‘text’)
;app.EditField.FontSize = 14
;’app.EditField.FontWeight = ‘bold
;app.EditField.Position = [212 134 323 132]
;’app.EditField.Value = ‘Hema Hariharan Samson @gfg
بعد از ایجاد تمام اجزاء، شکل را نشان دهید%
;’app.UIFigure.Visible = ‘on
end
end
ایجاد و حذف برنامه%
methods (Access = public)
ساخت اپلیکیشن%
function app = app1
Create UIFigure and components%
createComponents(app)
برنامه را با اپ دیزاینر ثبت کنید%
registerApp(app, app.UIFigure)
if nargout == 0
clear app
end
end
کدی که قبل از حذف برنامه اجرا می شود%
function delete(app)
Delete UIFigure when app is deleted%
delete(app.UIFigure)
end
end
end
چند نمونه از نحوه استفاده از یک جزء EditField در رابط کاربری گرافیکی پروژه متلب:
اعتبار سنجی ورودی:
می توانید از یک جزء EditField برای وارد کردن یک مقدار عددی و اعتبارسنجی ورودی با استفاده از تابعisnumeric استفاده کنید. اگر ورودی عددی نیست، میتوانید با استفاده از مؤلفه «متن ثابت» پیام خطا را نمایش دهید.
فیلتر کردن یک لیست :
می توانید از یک جزء EditField برای فیلتر کردن لیستی از موارد نمایش داده شده در یک جزء Listbox استفاده کنید. همانطور که کاربر در EditField تایپ می کند، می توانید از ویژگی String برای به روز رسانی لیست نمایش داده شده در Listbox بر اساس متن وارد شده استفاده کنید.
ورودی متن:
در پروژه متلب می توانید از یک جزء EditField برای وارد کردن یک رشته متن و استفاده از آن در کد خود استفاده کنید. به عنوان مثال، می توانید از آن برای وارد کردن نام فایل و خواندن فایل با استفاده از تابعfopen استفاده کنید.
منابع:
https://se.mathworks.com/matlabcentral/answers/745912-app-designer-first-application-issue
https://www.mathworks.com/matlabcentral/answers/1446634-how-to-stop-figure-window-from-popping-up
