کلاس FlowLayout در جاوا :
برای سازماندهی و چیدن اجزای (components) گرافیکی در یک خط به گونه ای که یکی پس از دیگری قرارگیرند از FlowLayout استفاده میکنیم. طرح پیشفرض applet یا panel در جاوا FlowLayout است.
فیلدهای کلاس FlowLayout در جاوا:
1. public static final int LEFT 2. public static final int RIGHT 3. public static final int CENTER 4. public static final int LEADING 5. public static final int TRAILING |
• هر کدام هر فیلدهای بالا محور قرار گیری اجزای گرافیکی در برنامه را مشخص میکند.
1. این مقدار نشان میدهد که هر ردیف از اجزای گرافیکی باید در محور چپ قرار بگیرد.
2. این مقدار نشان میدهد که هر ردیف از اجزای گرافیکی باید در محور راست قرار بگیرد.
3. این مقدار نشان میدهد که هر ردیف از اجزای گرافیکی باید در محور مرکزی فریم قرار بگیرد.
• مورد 4 و 5 را در قالب مثال در آخر این جلسه آموزشی بررسی میکنیم.
سازنده های کلاس FlowLayout در جاوا:
مثال:
package www.javapro.ir; import java.awt.*; import javax.swing.*; public class MyFlowLayout{ JFrame f; MyFlowLayout(){ f=new JFrame(); JButton b1=new JButton("1"); JButton b2=new JButton("2"); JButton b3=new JButton("3"); JButton b4=new JButton("4"); JButton b5=new JButton("5"); f.add(b1);f.add(b2);f.add(b3);f.add(b4);f.add(b5); f.setLayout(new FlowLayout(FlowLayout.RIGHT)); //setting flow layout of right alignment f.setSize(300,300); f.setVisible(true); } public static void main(String[] args) { new MyFlowLayout(); } } |
خروجی: تصویر(1)
توضیحات:
f.setLayout(new FlowLayout(FlowLayout.RIGHT)); |
• مثل همیشه برای تنظیم طرح چیدمان اجزای گرافیکی در فریم، متد setLayout را صدا میزنیم.
• پارامتر متد setLayout یک شی از نوع یکی از کلاس های مدیریت چیدمان دریافت میکند. در اینجا از کلاس FlowLayout بصورت مستقیم شی ساخته و جایگزین پارامتر این متد کرده ایم.
• محوریت راست را جایگزین پارامتر سازنده کلاس FlowLayout کرده ایم.با این کار اجزای گرافیکی ما در سمت راست چیده میشوند. مثلا اگر به جای فیلد FlowLayout.RIGHT فیلد FlowLayout.LEFT را جایگزین پارامتر سازنده کلاس FlowLayout کنیم اجزای گرافیکی در سمت چپ فریم چیده میشوند.تصویر(2)
قصد داریم برای فیلد زیر مثال بزنیم:
public static final int LEADING |
مثال:
package www.javapro.ir; import java.awt.FlowLayout; // w w w. jav a p r o .i r import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class Mainextends JFrame { public Main() { add(new JButton("w w w.j a v a pro. ir")); add(new JButton("w w w.j a v a p r o. ir")); add(new JButton("w w w.javapro.ir")); add(new JButton("www.j ava p r o. ir")); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLayout(new FlowLayout(FlowLayout.LEADING)); setSize(200, 200); setVisible(true); } public static void main(String[] args) { new Main(); } } |
خروجی: تصویر(3)
setLayout(new FlowLayout(FlowLayout.LEADING)); |
• مدیریت چیدمان خود را از نوع FlowLayout انتخاب کرده ایم.
• محور قرارگیری ردیف اجزای گرافیکی را نیز LEADING انتخاب کرده ایم.
• LEADING جهت قرارگیری ردیف اجزای گرافیکی ما را براساس لبه ابتدایی اجزای گرافیکی تعیین میکند! خب واضع تر برامون میگید؟! بله به تصویر(4) توجه کنید:
همان طور که در تصویر(4) مشاهده میکنید هر اجزای گرافیکی یک لبه ابتدایی(لبه سمت چپ) و یک لبه انتهایی( لبه سمت راست) دارد، حال در FlowLayout.LEADING جهت شروع قرارگیری ردیف اجزای گرافیکی بر اساس لبه ابتدایی( لبه سمت چپ) اجزای گرافیکی تعیین میشود. لبه ابتدایی هر اجزای گرافیکی سمت چپ است پس محور قرارگیری ردیف اجزای گرافیکی از سمت چپ تنظیم میشود. در تصویر(3) همان طور که میبینید ردیف اجزای گرافیکی از جهت لبه ابتدایی(لبه سمت چپ) شروع شده است.
public static final intTRAILING |
package www.javapro.ir; import java.awt.FlowLayout; // w w w. jav a p r o .i r import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; public class Main extends JFrame { public Main() { add(new JButton("w w w.j a v a pro. ir")); add(new JButton("w w w.j a v a p r o. ir")); add(new JButton("w w w.javapro.ir")); add(new JButton("www.j ava p r o. ir")); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setLayout(new FlowLayout(FlowLayout.TRAILING)); setSize(200, 200); setVisible(true); } public static void main(String[] args) { new Main(); } } |
setLayout(new FlowLayout(FlowLayout.TRAILING)); |
پیروز و موفق باشید
بستن *نام و نام خانوادگی * پست الکترونیک * متن پیام |
دوره های آموزشی برنامه نویسی
انجام پروژه های برنامه نویسی
تدریس خصوصی برنامه نویسی
بیش از 7 سال از فعالیت جاواپرو میگذرد
جاواپرو دارای مجوز نشر دیجیتال از وزارت فرهنگ و ارشاد اسلامی است
جهت ارتباط مستقیم با جاواپرو در واتساپ و تلگرام :
09301904690