سایر

GUI و واسطه های گرافیکی، در متلب

ساخت ProgressBar برای نمایش میزان پیشرفت اجرای برنامه، در متلب

حتما تاکنون هنگام نصب نرم افزارهای مختلف، مشاهده کرده اید که یک ProgressBar به کاربر نمایش داده می شود تا میزان پیشرفت نصب برنامه را به صورت گرافیکی ببیند. در این مبحث قصد داریم که چگونگی ساخت یک ProgressBar برای نمایش میزان پیشرفت اجرا شدن برنامه متلب نوشته شده را آموزش بدهیم.

ساخت ProgressBar برای نمایش میزان پیشرفت اجرای برنامه، در متلب

قبل از هر چیز، باید تذکر بدهم که خود برنامه نویس باید میزان زمان اجرای بخش های مختلف برنامه متلب را حدس بزند و سپس بر اساس آن، میزان پیشرفت ProgressBar در مراحل مختلف اجرای برنامه را در میان کدهای برنامه، تعیین نماید.

به مثال زیر توجه کنید :

مثال :

clear all
close all
clc
 
d = com.mathworks.mlwidgets.dialog.ProgressBarDialog.createProgressBar(‘run program …’, []);
d.setValue(0.25);                        
d.setProgressStatusLabel(‘running …’);  
d.setSpinnerVisible(true);              
d.setCircularProgressBar(false);        
d.setCancelButtonVisible(true);          
d.setVisible(true);                      
 
for n=1:10000000
    x=n^10;
end
d.setValue(0.5);
 
for n=1:10000000
    x=n^10;
end
d.setValue(0.75);
 
for n=1:10000000
    x=n^10;
end
d.setVisible(false);

سه خط اول کدها، برای عدم تداخل برنامه فعلی با برنامه های قبلی اجرا شده در متلب می باشد. d را به صورت یک شیء (object) از یک کلاس (class) مربوط به ساخت ProgressBar ، ساخته ایم (اگر معنی این جمله را نمی دانید، مفاهیم برنامه نویسی شیء گرا را مطالعه کنید). بنابراین، شیء d ، به ما یک ProgressBar می دهد که می توانیم ویژگی های مورد نظرمان را به آن اعمال کنیم، مقدار پیشرفت آن در زمان های مختلف در طول اجرای برنامه را تعیین کرده و همچنین بگوییم که چه زمانی نمایش داده شود و چه زمانی ناپدید شود.

دقت شود که کدهایی که در حلقه for نوشته ایم (که چند بار در طول برنامه تکرار شده اند)، تنها برای این است که اجرای کدها، کمی طولانی شود تا بتوانیم پیشرفت مقدار ProgressBar را به راحتی ببینیم (برنامه خیلی سریع اجرا نشود)، پس ماهیت آنها اهمیتی برای ما ندارد.

ابتدا با setValue ، مقدار 0.25 را برای ProgressBar در نظر گرفته ایم. یعنی در ProgressBar ، مقدار 25 درصد پیشرفت نمایش داده می شود. با استفاده از setValue ، پس از پایان هر بخش مهم از اجرای کدها، مقدار درصد پیشرفت ProgressBar را تغییر می دهیم تا کاربر، متوجه پیشرفت اجرای برنامه بشود. روش setVisible برای تعیین نمایش یا عدم نمایش ProgressBar می باشد. در ابتدای برنامه، به آن، مقدار true می دهیم تا ProgressBar نمایش داده شود و در انتهای برنامه که دیگر همه برنامه اجرا شده است، به آن مقدار false را می دهیم تا ProgressBar نمایش داده نشود (ناپدید شود).

در صورت دلخواه، با روش setProgressStatusLabel ، می توانید در مراحل مختلف اجرای برنامه، متن نمایش داده شده در ProgressBar را نیز تغییر بدهید.

نتیجه :

مراحل تغییر ProgressBar به صورت زیر خواهد بود (هنگام اجرای برنامه) :

ساخت ProgressBar برای نمایش میزان پیشرفت اجرای برنامه، در متلب
ساخت ProgressBar برای نمایش میزان پیشرفت اجرای برنامه، در متلب
ساخت ProgressBar برای نمایش میزان پیشرفت اجرای برنامه، در متلب

و در آخر، ProgressBar بسته می شود و کاربر متوجه می شود که اجرای برنامه، پایان یافته است.

تگ شده

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *