مدیریت اطلاعات پیشرفت

مدیریت اطلاعات پیشرفت

مدیریت اطلاعات پیشرفت
امکان ایجاد یک مانیتور برای پیشرفت حل کننده وجود دارد. در صورت تمایل می توان از این مانیتور برای لغو شبیه سازی های طولانی مدت نیز استفاده کرد.
اطلاعات پیشرفت با استفاده از دو کلاس مختلف در دسترس است: SwingProgressPanel برای نمایش پیشرفت در رابط کاربری گرافیکی و SwingDemoProgressContext برای مدیریت ارتباط بین COMSOL Multiphysics و مناطقی که برنامه به اطلاعاتی در مورد پیشرفت نیاز دارد استفاده می‌شود.
SwingDemoProgressContext SwingProgressContext را گسترش می دهدکه در بخش مرجع در پایان این فصل توضیح داده شده است.
هر دو کلاس با کپی کردن دو فایل به جای نوشتن از ابتدا اضافه می شوند.
1
از ماوس برای کشیدن و رها کردن این فایل ها به پوشه src که در Package Explorer در Eclipse نشان داده شده است استفاده کنید: SwingDemoProgressContext.java و SwingProgressPanel.java .
2
فایل BeamModelDemo.java را باز کرده و به روش start بروید.
3
این خطوط را قبل از فراخوانی به frame.visible اضافه کنید
SwingProgressPanel progressPanel = جدید SwingProgressPanel();
mainPanel.add(progressPanel, BorderLayout.PAGE_END);
progressPanel.updateProgressLog(“شروع\n”);
ProgressWorker.setContext(SwingDemoProgressContext جدید (progressPanel));
4
این خطوط به پانل پیشرفت در پایین پنجره اصلی اضافه می شوند و زمینه بین COMSOL و برنامه کاربر تنظیم می شود.
5
برای نشان دادن هرگونه پیشرفت در رابط کاربری گرافیکی، حل کننده نباید در موضوع اصلی اجرا شود. این بدان معنی است که یک موضوع جداگانه برای حل کننده ایجاد می شود. با حذف خطوط مربوطه از روش شروع، متد حل زیر را ایجاد کنید:
خلا خصوصی حل() {
  ProgressWorker.run(new Runnable() {
    public void run() {
      model.sol(“sol1”).runAll();
      model.result(“pg1”).set(“window”, “window1”);
      model.result(“pg1”).run();
    }
  })؛
}
6
به یاد داشته باشید که در پایان روش شروع، یک فراخوانی به متد حل اضافه کنید.
7
برنامه را با کلیک راست روی BeamModelDemo.java در Package Explorer اجرا کنید و Run as>Java Application را انتخاب کنید .
8
پنجره برنامه باز می شود و اطلاعات پیشرفت را هنگام شروع و حل نشان می دهد.