AWT (Abstract Window Toolkit) আসলে Java Development Kit (JDK) এর অংশ, তাই AWT ব্যবহার করার জন্য আলাদা করে কোনো ইন্সটলেশন প্রক্রিয়া নেই। আপনি যখন JDK ইন্সটল করবেন, তখন AWT লাইব্রেরি স্বয়ংক্রিয়ভাবে সেটআপ হয়ে যাবে।
এখানে JDK ইন্সটল এবং AWT ব্যবহার শুরু করার প্রক্রিয়া দেওয়া হলো:
1. JDK ইন্সটল করা:
AWT ব্যবহারের জন্য প্রথমেই আপনার কম্পিউটারে JDK ইন্সটল থাকতে হবে।
- JDK ডাউনলোড:
- Oracle এর অফিসিয়াল ওয়েবসাইটে যান: Oracle JDK
- আপনার অপারেটিং সিস্টেম অনুযায়ী JDK ডাউনলোড করুন (Windows, macOS, Linux)।
- ইন্সটলেশন:
- ডাউনলোড করা ফাইলটি রান করুন।
- ইন্সটলেশন উইজার্ডে প্রদত্ত নির্দেশাবলী অনুসরণ করুন।
- ইন্সটলেশনের পরে, JDK এর ইনস্টলেশন ডিরেক্টরি চিহ্নিত করুন (যেমন
C:\Program Files\Java\jdk-XXWindows এ)।
2. Environment Variable সেট করা:
এটি Java প্রোগ্রাম রান করার জন্য গুরুত্বপূর্ণ।
- Windows:
Control Panel>System>Advanced system settings>Environment Variables।System Variablesএর মধ্যেPathসিলেক্ট করুন এবংEditকরুন।নতুন ভ্যালু হিসেবে JDK এর
binফোল্ডারের পাথ যোগ করুন, যেমন:C:\Program Files\Java\jdk-XX\bin- OK করুন এবং সিস্টেম রিস্টার্ট করুন।
- macOS/Linux:
- টার্মিনাল ওপেন করুন।
.bashrcবা.zshrcফাইলে নিম্নলিখিত কমান্ড যোগ করুন:export PATH=/path/to/jdk/bin:$PATH- টার্মিনাল রিস্টার্ট করুন অথবা
source ~/.bashrcরান করুন।
3. AWT ব্যবহার শুরু করা:
AWT টুলকিট Java এর স্ট্যান্ডার্ড লাইব্রেরির অংশ, তাই AWT ব্যবহার করতে আপনাকে শুধু Java কোড লেখার সময় java.awt প্যাকেজটি ইনক্লুড করতে হবে।
উদাহরণ: একটি সহজ AWT প্রোগ্রাম
import java.awt.*;
import java.awt.event.*;
public class SimpleAWTExample {
public static void main(String[] args) {
// উইন্ডো তৈরি
Frame frame = new Frame("AWT Example");
// একটি বোতাম তৈরি
Button button = new Button("Click Me");
// বোতামে একটি অ্যাকশন হ্যান্ডলার যোগ করা
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Button clicked!");
}
});
// বোতামটি ফ্রেমে যুক্ত করা
frame.add(button);
// উইন্ডো সাইজ সেট করা
frame.setSize(300, 200);
// উইন্ডো বন্ধ করার জন্য একটি উইন্ডো ক্লোজ ইভেন্ট হ্যান্ডলিং
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we) {
System.exit(0);
}
});
// উইন্ডো দেখানোর জন্য
frame.setVisible(true);
}
}
4. প্রোগ্রাম রান করা:
প্রোগ্রামটি রান করতে, আপনার কম্পিউটারে JDK ইন্সটল থাকার পর আপনি নিচের কমান্ডগুলো ব্যবহার করতে পারেন:
- কোডটি একটি ফাইলে সংরক্ষণ করুন (যেমন
SimpleAWTExample.java). - টার্মিনাল/কমান্ড প্রম্পট ওপেন করুন।
ফাইলটি কম্পাইল করুন:
javac SimpleAWTExample.javaপ্রোগ্রামটি রান করুন:
java SimpleAWTExample
এই প্রক্রিয়া অনুসরণ করলে AWT ব্যবহার শুরু করতে পারবেন।
AWT (Abstract Window Toolkit) ব্যবহার করার জন্য আপনাকে জাভা ডেভেলপমেন্ট কিট (JDK) সেটআপ করতে হবে। AWT জাভার একটি অংশ হিসেবে অন্তর্ভুক্ত থাকে, তাই আলাদাভাবে AWT ইন্সটল করার দরকার নেই। AWT ব্যবহারের জন্য আপনাকে JDK ইন্সটল করা এবং সঠিক সেটআপ নিশ্চিত করতে হবে।
নিচে JDK ইন্সটল করা এবং AWT ব্যবহার শুরু করার জন্য প্রয়োজনীয় পদক্ষেপগুলো দেয়া হলো:
১. JDK ডাউনলোড এবং ইন্সটলেশন
- JDK ডাউনলোড:
জাভা ডেভেলপমেন্ট কিট (JDK) ডাউনলোড করতে Oracle-এর অফিসিয়াল সাইট অথবা OpenJDK সাইট এ যান। আপনি আপনার অপারেটিং সিস্টেমের জন্য সঠিক ভার্সনটি ডাউনলোড করবেন। - JDK ইন্সটল করা:
ডাউনলোড করার পর, ইনস্টলেশন প্রক্রিয়া অনুসরণ করুন। ইনস্টলেশন প্রক্রিয়া সহজ এবং সোজা, কিন্তু যদি কোনও ইনস্টলেশন ডিরেক্টরি কনফিগার করতে বলা হয়, তবে এটি মনে রাখবেন (যেমনC:\Program Files\Java\jdk-XXঅথবা/usr/lib/jvm/java-XX-openjdk। - পাথ (PATH) কনফিগার করা:
JDK ইন্সটল করার পর, আপনাকেPATHএনভায়রনমেন্ট ভেরিয়েবলটি কনফিগার করতে হবে যাতে কমান্ড লাইন থেকে Java কমান্ডগুলি সঠিকভাবে চালানো যায়।- Windows:
- Control Panel > System and Security > System > Advanced system settings > Environment Variables এ যান।
- “System variables” বিভাগে, “Path” ভেরিয়েবলটি সিলেক্ট করুন এবং “Edit” ক্লিক করুন।
- নতুন পাথ হিসেবে JDK এর
binফোল্ডারের লোকেশন যুক্ত করুন (যেমন:C:\Program Files\Java\jdk-XX\bin)।
Mac/Linux:
.bash_profileঅথবা.zshrcফাইলে নিচের মত পাথ যুক্ত করুন:export PATH=$PATH:/path/to/jdk/bin
- Windows:
ইন্সটলেশন পরীক্ষা করা:
টার্মিনাল বা কমান্ড প্রম্পটে নিচের কমান্ড দিয়ে জাভা সঠিকভাবে ইন্সটল হয়েছে কিনা পরীক্ষা করুন:java -version javac -version
২. AWT দিয়ে প্রোগ্রাম লেখা
AWT ব্যবহারের জন্য JDK ইন্সটল হওয়ার পর, আপনি সহজেই AWT এর সাথে প্রোগ্রাম লিখতে পারবেন। উদাহরণস্বরূপ, নিচে একটি সাধারণ AWT প্রোগ্রাম দেয়া হলো:
import java.awt.*;
import java.awt.event.*;
public class AWTExample {
public static void main(String[] args) {
Frame frame = new Frame("AWT Example");
Button button = new Button("Click Me");
button.setBounds(50, 100, 80, 30); // Button position and size
button.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
System.out.println("Button Clicked!");
}
});
frame.add(button);
frame.setSize(300, 200);
frame.setLayout(null);
frame.setVisible(true);
}
}
৩. প্রোগ্রাম রান করা
প্রোগ্রাম কম্পাইল করুন:
আপনার Java কোডটি একটি.javaফাইলে সেভ করুন (যেমন:AWTExample.java)। এরপর কমান্ড লাইন থেকে এই কমান্ডটি চালান:javac AWTExample.javaপ্রোগ্রাম রান করুন:
প্রোগ্রামটি কম্পাইল হওয়ার পর, এটি রান করতে নিচের কমান্ডটি ব্যবহার করুন:java AWTExample
এভাবে আপনি JDK ইন্সটল করার মাধ্যমে AWT ব্যবহার করে গ্রাফিক্যাল ইউজার ইন্টারফেস তৈরি করতে পারবেন।
AWT (Abstract Window Toolkit) ব্যবহার করে একটি প্রজেক্ট তৈরি করার জন্য আপনি Eclipse বা IntelliJ IDEA-তে নিম্নলিখিত ধাপগুলি অনুসরণ করতে পারেন। এখানে আমি Eclipse এবং IntelliJ IDEA-এর জন্য নির্দেশনা প্রদান করছি:
Eclipse এ AWT প্রজেক্ট তৈরি করার ধাপ:
- Eclipse ইনস্টল করুন:
- যদি আপনার Eclipse ইনস্টল না থাকে, তাহলে এটি Eclipse-এর অফিসিয়াল ওয়েবসাইট থেকে ডাউনলোড এবং ইনস্টল করুন।
- নতুন Java Project তৈরি করুন:
- Eclipse ওপেন করুন এবং File > New > Java Project-এ যান।
- প্রজেক্টের নাম দিন (যেমন:
AWTExample) এবং Finish ক্লিক করুন।
- নতুন Java Class তৈরি করুন:
- src ফোল্ডারে ডান ক্লিক করুন এবং New > Class নির্বাচন করুন।
- ক্লাসের নাম দিন (যেমন:
AWTExample) এবং public static void main(String[] args) মেথডটি চেক করুন। - Finish ক্লিক করুন।
AWT কোড লিখুন:
- আপনার তৈরি ক্লাসে AWT GUI উপাদান যোগ করুন, যেমন: Frame, Button, Label ইত্যাদি।
উদাহরণস্বরূপ:
import java.awt.*; import java.awt.event.*; public class AWTExample { public static void main(String[] args) { // Frame তৈরি Frame frame = new Frame("AWT Example"); // Label এবং Button তৈরি Label label = new Label("Enter your name:"); TextField textField = new TextField(); Button button = new Button("Submit"); // উপাদানগুলো ফ্রেমে অ্যাড করা label.setBounds(20, 50, 120, 20); textField.setBounds(140, 50, 150, 20); button.setBounds(100, 100, 80, 30); frame.add(label); frame.add(textField); frame.add(button); // ফ্রেমের সাইজ সেট করা frame.setSize(300, 200); frame.setLayout(null); frame.setVisible(true); // বাটনে অ্যাকশন লিসেনার যোগ করা button.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { System.out.println("Hello, " + textField.getText()); } }); } }- প্রজেক্ট রান করুন:
- কোডটি লিখে Run বাটন ক্লিক করুন অথবা Right-click > Run As > Java Application করুন।
IntelliJ IDEA তে AWT প্রজেক্ট তৈরি করার ধাপ:
- IntelliJ IDEA ইনস্টল করুন:
- যদি আপনার IntelliJ IDEA ইনস্টল না থাকে, IntelliJ IDEA-এর অফিসিয়াল সাইট থেকে এটি ডাউনলোড এবং ইনস্টল করুন।
- নতুন Java Project তৈরি করুন:
- IntelliJ IDEA ওপেন করুন এবং New Project নির্বাচন করুন।
- Project SDK নির্বাচন করুন (যদি SDK সেট করা না থাকে তবে Java SDK ইনস্টল করুন) এবং Java নির্বাচন করুন। তারপর Next ক্লিক করুন।
- প্রজেক্টের নাম দিন (যেমন:
AWTExample) এবং Finish ক্লিক করুন।
- নতুন Java Class তৈরি করুন:
- প্রজেক্টে src ফোল্ডারে ডান ক্লিক করুন এবং New > Java Class নির্বাচন করুন।
- ক্লাসের নাম দিন (যেমন:
AWTExample) এবং OK ক্লিক করুন।
- AWT কোড লিখুন:
- উপরের Eclipse কোডটি IntelliJ IDEA-তে আপনার তৈরি ক্লাসে পেস্ট করুন।
- প্রজেক্ট রান করুন:
- কোডটি লিখে Run বাটন ক্লিক করুন অথবা Shift + F10 প্রেস করুন।
AWT প্রজেক্টের মূল ধারণা:
এটি একটি সরল GUI অ্যাপ্লিকেশন যা একটি ফ্রেমে একটি লেবেল, টেক্সট ফিল্ড এবং একটি বাটন প্রদর্শন করে। ব্যবহারকারী টেক্সট ইনপুট প্রদান করে এবং বাটনে ক্লিক করলে এটি কনসোল-এ টেক্সট প্রদর্শন করে।
AWT প্রজেক্টের উন্নতির জন্য পরামর্শ:
- Swing ব্যবহার করতে পারেন, কারণ Swing AWT-এর চেয়ে বেশি উন্নত এবং আরও কাস্টমাইজযোগ্য।
- Event Handling-এর মাধ্যমে আরো ইন্টারেকটিভ ফিচার যোগ করতে পারেন।
এটি একটি সাধারণ প্রজেক্টের উদাহরণ, যা AWT-এর মৌলিক ব্যবহার দেখায়।
এডাব্লিউটি (AWT) এর বেসিক গঠন এবং ক্লাস স্ট্রাকচার হল এমন একটি কাঠামো যা গ্রাফিক্যাল ইউজার ইন্টারফেস (GUI) উপাদান তৈরি, পরিচালনা এবং ইন্টারঅ্যাকশনের জন্য ব্যবহৃত হয়। AWT মূলত Java AWT package এর বিভিন্ন ক্লাস ও ইন্টারফেসের মাধ্যমে GUI উপাদানগুলো প্রদান করে। AWT এর মধ্যে বিভিন্ন ধরনের ক্লাস এবং ইন্টারফেস অন্তর্ভুক্ত থাকে, যা বিভিন্ন GUI উপাদান এবং ইভেন্ট হ্যান্ডলিং কার্য সম্পাদন করতে ব্যবহৃত হয়।
AWT এর বেসিক গঠন:
AWT এর প্রধান উদ্দেশ্য হলো GUI উপাদানগুলির সঞ্চালন এবং ইন্টারঅ্যাকশন সহজ করা। এটি কিছু মূল উপাদান ব্যবহার করে কাজ করে:
- Component (ক্লাস):
- AWT এর সমস্ত GUI উপাদান (যেমন Button, Label, TextField) Component ক্লাস থেকে উৎসূত। এটি একটি অত্যন্ত গুরুত্বপূর্ণ ক্লাস, যেটি সমস্ত GUI উপাদানকে মৌলিক বৈশিষ্ট্য প্রদান করে। যেমন: position, size, visibility, ইত্যাদি।
- উদাহরণস্বরূপ,
Button,TextField,Labelইত্যাদিComponentক্লাসের সাবক্লাস।
- Container (ক্লাস):
- Container একটি বিশেষ ধরণের কম্পোনেন্ট যা অন্যান্য কম্পোনেন্ট ধারণ করতে পারে। এটি প্রাথমিকভাবে layout managers (যেমন FlowLayout, BorderLayout, GridLayout) এবং অন্যান্য কম্পোনেন্টগুলি পরিচালনা করতে ব্যবহৃত হয়।
- উদাহরণ:
Frame,Panel,Dialogইত্যাদিContainerক্লাসের সাবক্লাস।
- Window (ক্লাস):
- AWT এর Window ক্লাস,
FrameএবংDialogএর মতো উইন্ডো তৈরি করার জন্য ব্যবহৃত হয়। - এটি ব্যবহারকারীর ইন্টারফেসের প্রধান উইন্ডো তৈরি করতে সাহায্য করে।
- AWT এর Window ক্লাস,
- Layout Managers:
- Layout Managers বিভিন্ন ধরনের লেআউট তৈরি করার জন্য ব্যবহৃত হয়, যেমন:
FlowLayout: উপাদানগুলো একে অপরের পাশে সাজানো হয়।BorderLayout: পাঁচটি অঞ্চলে (উত্তর, দক্ষিণ, পূর্ব, পশ্চিম, কেন্দ্র) উপাদানগুলো স্থাপন করা হয়।GridLayout: গ্রিড আকারে উপাদানগুলো সাজানো হয়।
- Layout Managers বিভিন্ন ধরনের লেআউট তৈরি করার জন্য ব্যবহৃত হয়, যেমন:
- Event Handling:
- AWT ইভেন্ট পরিচালনার জন্য EventListener ইন্টারফেস ব্যবহার করে। যখন ব্যবহারকারী কোন ইভেন্ট ঘটায় (যেমন বাটন ক্লিক), তখন তা একটি Event এ রূপান্তরিত হয় এবং উপযুক্ত ইভেন্ট লিসনারের মাধ্যমে তা পরিচালিত হয়।
- ActionListener, MouseListener, KeyListener ইত্যাদি ইভেন্ট লিসনার ক্লাসগুলো ইভেন্টগুলির জন্য ব্যবহৃত হয়।
AWT এর ক্লাস স্ট্রাকচার:
- Component (superclass)
Button,Label,TextField,TextArea,Checkbox,List,Choice,Menu,MenuItem,Scrollbar,Canvasইত্যাদি ক্লাস Component থেকে উত্তরাধিকারসূত্রে আসে।
- Container (subclass of Component)
Frame,Panel,Dialog,Window,Appletইত্যাদি ক্লাস Container থেকে উত্তরাধিকারসূত্রে আসে।- এগুলি অন্যান্য কম্পোনেন্ট ধারণ এবং দেখানোর জন্য ব্যবহৃত হয়।
- Event (Superclass of all events)
- AWT ইভেন্টগুলি সাধারণত
Eventক্লাসের অন্তর্ভুক্ত থাকে। এর মাধ্যমে EventListener কে সঠিক ইভেন্ট সনাক্তকরণ এবং হ্যান্ডলিং করার ক্ষমতা প্রদান করা হয়।
- AWT ইভেন্টগুলি সাধারণত
- LayoutManager (Interface)
- LayoutManager ইন্টারফেসটি বিভিন্ন লেআউট ম্যানেজারদের জন্য ভিত্তি প্রদান করে। কিছু সাধারণ লেআউট ম্যানেজার হল:
FlowLayout: উপাদানগুলো সোজা রেখায় সাজানো হয়।BorderLayout: পাঁচটি অঞ্চলে (উত্তর, দক্ষিণ, পূর্ব, পশ্চিম, কেন্দ্র) কম্পোনেন্টগুলির পজিশন প্রদান করে।GridLayout: সমান সাইজের গ্রিড আকারে উপাদানগুলো সাজানো হয়।
- LayoutManager ইন্টারফেসটি বিভিন্ন লেআউট ম্যানেজারদের জন্য ভিত্তি প্রদান করে। কিছু সাধারণ লেআউট ম্যানেজার হল:
AWT-এর মূল ক্লাসের সংক্ষিপ্ত বর্ণনা:
- Frame: GUI অ্যাপ্লিকেশন তৈরির জন্য একটি উইন্ডো প্রদান করে, যেখানে অন্যান্য কম্পোনেন্ট রাখা যায়।
- Button: ব্যবহারকারীর ইনপুট গ্রহণ করার জন্য একটি বাটন উপাদান।
- TextField: একটি একক লাইনের টেক্সট ইনপুট ফিল্ড।
- TextArea: একাধিক লাইনের টেক্সট ইনপুট ফিল্ড।
- Label: ব্যবহারকারীর জন্য একটি টেক্সট বা স্ট্যাটিক তথ্য প্রদর্শন করতে ব্যবহৃত হয়।
- Checkbox: চেকবক্সের মাধ্যমে ব্যবহারকারীর পছন্দ নেওয়া যায়।
- Panel: অন্যান্য কম্পোনেন্ট ধারণ করার জন্য একটি কন্টেইনার।
- Canvas: গ্রাফিক্স বা ড্রইং কার্য সম্পাদনের জন্য ব্যবহৃত একটি কম্পোনেন্ট।
AWT-এর ইভেন্ট হ্যান্ডলিং:
AWT ইভেন্ট হ্যান্ডলিং সিস্টেম ব্যবহার করে বিভিন্ন ব্যবহারকারী ইন্টারঅ্যাকশন যেমন বাটন ক্লিক, কীবোর্ড ইনপুট বা মাউস মুভমেন্ট হ্যান্ডেল করা হয়। এটি দুটি প্রধান উপাদানের মাধ্যমে কাজ করে:
- Event Source: যেখান থেকে ইভেন্ট উৎপন্ন হয় (যেমন একটি বাটন ক্লিক হলে)।
- Event Listener: যিনি সেই ইভেন্টটি হ্যান্ডেল করেন (যেমন
ActionListenerবাMouseListenerইন্টারফেস)।
AWT ইভেন্ট হ্যান্ডলিং নিম্নলিখিত কৌশলগুলো ব্যবহার করে:
- ActionListener: বাটন ক্লিক ইভেন্ট।
- MouseListener: মাউসের ইভেন্ট।
- KeyListener: কীবোর্ডের ইভেন্ট।
AWT এর ক্লাস স্ট্রাকচার চিত্র:
java.awt.Component
|
+---------+---------+
| |
Button TextField
|
Frame (Container)
এটি AWT এর বেসিক গঠন এবং ক্লাস স্ট্রাকচার সংক্রান্ত একটি সংক্ষিপ্ত বর্ণনা।
Read more