জাভায় সুইং করুন: উদাহরণ সহ জিইউআই কীভাবে তৈরি করবেন তা জানুন

: জিইউআই অ্যাপ্লিকেশনটির ব্যবহারিক প্রদর্শনের সাথে সুইং ক্লাসের স্তরক্রম এবং লেআউট ম্যানেজারের সাথে জাভাতে সুইংয়ের ধারণা অর্জন করুন।

জাভাতে সুইং জাভা ফাউন্ডেশন শ্রেণীর অংশ যা লাইটওয়েট এবং প্ল্যাটফর্ম স্বতন্ত্র। এটি উইন্ডো ভিত্তিক অ্যাপ্লিকেশন তৈরি করতে ব্যবহৃত হয়। এটিতে বোতাম, স্ক্রোল বার, পাঠ্য ক্ষেত্রের মতো উপাদান অন্তর্ভুক্ত রয়েছে these এই সমস্ত উপাদানগুলি একসাথে রাখলে গ্রাফিক্যাল ইউজার ইন্টারফেস হয়। এই নিবন্ধে, আমরা সুইং-ইন ব্যবহার করে অ্যাপ্লিকেশন তৈরির প্রক্রিয়াতে জড়িত ধারণাগুলির মধ্য দিয়ে যাব । এই নিবন্ধে আলোচিত ধারণাগুলি নিম্নলিখিত:



জাভাতে সুইং কি?

জাভাতে সুইং হ'ল একটি লাইটওয়েট জিইউআই টুলকিট যার অপ্টিমাইজড উইন্ডো ভিত্তিক অ্যাপ্লিকেশনগুলি তৈরির জন্য বিভিন্ন ধরণের উইজেট রয়েছে। এটি জেএফসির একটি অংশ (জাভা ফাউন্ডেশন ক্লাসেস)। এটি এডাব্লিউটি এপিআইয়ের শীর্ষে নির্মিত এবং সম্পূর্ণ লিখিত রয়েছে । এটি এডাব্লুটি এর বিপরীতে প্ল্যাটফর্মটি স্বতন্ত্র এবং লাইটওয়েটের উপাদান রয়েছে।



আমাদের কাছে ইতিমধ্যে জিইউআই উপাদান যেমন বোতাম, চেকবাক্স ইত্যাদি রয়েছে তাই অ্যাপ্লিকেশনগুলি তৈরি করা সহজ হয়ে যায় এটি সহায়ক কারণ আমাদের স্ক্র্যাচ থেকে শুরু করতে হবে না।

ধারক ক্লাস

যে কোন যার মধ্যে অন্যান্য উপাদান রয়েছে তাকে একটি ধারক শ্রেণি বলা হয়। জিইউআই অ্যাপ্লিকেশন তৈরির জন্য কমপক্ষে একটি ধারক শ্রেণীর প্রয়োজন।



ধারক শ্রেণীর তিন ধরণের নিম্নলিখিত:

  1. প্যানেল - এটি উইন্ডোতে উপাদানগুলি সংগঠিত করতে ব্যবহৃত হয়

  2. ফ্রেম - আইকন এবং শিরোনাম সহ একটি সম্পূর্ণ কার্যকারী উইন্ডো



  3. ডায়ালগ - এটি পপ আপ উইন্ডোর মতো তবে ফ্রেমের মতো পুরোপুরি কার্যকরী নয়

এডাব্লুটি এবং সুইং এর মধ্যে পার্থক্য

এডাব্লুটি দোলা
  • প্ল্যাটফর্ম নির্ভর
  • স্বাধীন প্ল্যাটফর্ম
  • এমভিসি অনুসরণ করে না
  • এমভিসি অনুসরণ করে
  • কম উপাদান
  • আরও শক্তিশালী উপাদান
  • প্লাগযোগ্য চেহারা এবং অনুভূতিকে সমর্থন করে না
  • প্লাগযোগ্য চেহারা এবং অনুভূতিকে সমর্থন করে
  • হেভিওয়েট
  • লাইটওয়েট

জাভা সুইং ক্লাস হায়ারার্কি

জাভা-এডুরেকায় হায়ারার্কি-সুইং

ব্যাখ্যা : JButton, JComboBox, JList, JLabel এর মত সুইং-এর সমস্ত উপাদানগুলি জেকম্পোনেন্ট শ্রেণি থেকে উত্তরাধিকার সূত্রে প্রাপ্ত যা কনটেইনার ক্লাসে যুক্ত হতে পারে। পাত্রে হ'ল ফ্রেম এবং ডায়ালগ বাক্সের মতো উইন্ডো। বেসিক সুইং উপাদানগুলি হ'ল যে কোনও জিআই অ্যাপ্লিকেশনের বিল্ডিং ব্লক। সেটলয়েটের মতো পদ্ধতিগুলি প্রতিটি পাত্রে ডিফল্ট লেআউটটিকে ওভাররাইড করে। JFrame এবং JDialog এর মত ধারকরা কেবল নিজের মধ্যে একটি উপাদান যুক্ত করতে পারে। আমরা কীভাবে সেগুলি ব্যবহার করতে পারি তা বোঝার জন্য উদাহরণ সহ কয়েকটি উপাদান নীচে দেওয়া হয়েছে।

জে বাটন ক্লাস

এটি একটি লেবেলযুক্ত বোতাম তৈরি করতে ব্যবহৃত হয়। অ্যাকশনলিস্টনার ব্যবহার করে বোতামটি চাপ দিলে কিছু ক্রিয়াকলাপ হবে। এটি অ্যাবস্ট্রাক বাটন শ্রেণীর উত্তরাধিকার সূত্রে প্রাপ্ত এবং প্ল্যাটফর্মটি স্বাধীন।

উদাহরণ:

আমদানি জাভ্যাক্স.সুইং। * পাবলিক ক্লাসের উদাহরণ {পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []) {জেফ্রেম এ = নতুন জেফ্রেম ('উদাহরণ') জেব্লটন বি = নতুন জেবটন ('আমাকে ক্লিক করুন') বি.সেটবাউন্ডস (৪০,৯০, 85,20) a.add (খ) a.setSize (300,300) a.setLayout (নাল) a.setVisible (সত্য)}

আউটপুট:

স্নাতকোত্তর স্নাতকোত্তর

জে টেক্সটফিল্ড ক্লাস

এটি JTextComp घटक শ্রেণীর উত্তরাধিকার সূত্রে প্রাপ্ত এবং এটি একক রেখার পাঠ্য সম্পাদনার অনুমতি দেওয়ার জন্য ব্যবহৃত হয়।

উদাহরণ:

আমদানি জাভ্যাক্স.সুইং। * পাবলিক ক্লাসের উদাহরণ {পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []) {জেফ্রেমে এ = নতুন জেফ্রেম ('উদাহরণ') জে টেক্সটফিল্ড বি = নতুন জে টেক্সটফিল্ড ('এডুরেকা') বি.সেটবাউন্ডস (50,100,200,30) a .add (খ) a.setSize (300,300) a.setLayout (নাল) a.setVisible (সত্য)}

আউটপুট:

জেএসক্রোলবার ক্লাস

এটি অনুভূমিক এবং উল্লম্ব উভয়ই স্ক্রোল বার যুক্ত করতে ব্যবহৃত হয়।

উদাহরণ:

javax.swing। * শ্রেণীর উদাহরণ {উদাহরণ () {JFrame a = new JFrame ('উদাহরণ') জেএসক্রলবার বি = নতুন জেএসক্রোলবার () বি.সেটবাউন্ডস (90,90,40,90) a.add (খ) a। সেটসাইজ (300,300) a.setLayout (নাল) a.setVisible (সত্য)} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []) {নতুন উদাহরণ ()}}

আউটপুট:

জেপানেল ক্লাস

এটি জে কমপোনেন্ট শ্রেণীর উত্তরাধিকার সূত্রে প্রাপ্ত এবং কোনও অ্যাপ্লিকেশনের জন্য স্থান সরবরাহ করে যা অন্য কোনও উপাদান সংযুক্ত করতে পারে।

আমদানি java.awt। * আমদানি javax.swing। * পাবলিক বর্গ উদাহরণ {উদাহরণ () {JFrame a = নতুন JFrame ('উদাহরণ') JPanel p = নতুন JPanel () p.setBounds (40,70,200,200) JButton b = new JButton ('আমাকে ক্লিক করুন') বি.সেটবাউন্ডস (60,50,80,40) পি.এডিডি (খ) এ.ডি.ডি. (পি) a.setSize (400,400) a.setLayout (নাল) a.setVisible (সত্য)} সর্বজনীন স্ট্যাটিক অকার্যকর প্রধান (স্ট্রিং আরগস []) {নতুন উদাহরণ ()}}

আউটপুট:

জেমনু ক্লাস s

এটি জেমনু আইটেম শ্রেণীর উত্তরাধিকার সূত্রে প্রাপ্ত, এবং এটি একটি টান ডাউন মেনু উপাদান যা মেনু বার থেকে প্রদর্শিত হয়।

আমদানি জাভ্যাক্স.সুইং। 'উদাহরণ') এ 2 = নতুন জেমনু আইটেম ('উদাহরণ 1') মেনু.এডিডি (এ 1) মেনু.এডিডি (এ 2) এম 1.এডিডি (মেনু) a.setJMenuBar (এম 1) a.setSize (400,400) a.setLayout (নাল) ক .setVisible (সত্য)} সার্বজনীন স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []) {নতুন উদাহরণ ()}}

আউটপুট:

জেলিস্ট ক্লাস

এটি জেকম্পোন্টেন্ট বর্গের উত্তরাধিকার সূত্রে প্রাপ্ত, জেলিস্ট শ্রেণীর অবজেক্টটি পাঠ্য আইটেমগুলির একটি তালিকা উপস্থাপন করে।

জাভাতে পার্সেল এক্সএমএল ফাইল
আমদানি জাভ্যাক্স.সুইং। * পাবলিক ক্লাসের উদাহরণ {উদাহরণ () {জেফ্রেম এ = নতুন জেফ্রেম ('উদাহরণ') ডিফল্টলিস্টমোডেল l = নতুন ডিফল্টলিস্টমোডেল () l.addElement ('প্রথম আইটেম') l.addElement ('দ্বিতীয় আইটেম') জেলিস্ট খ = নতুন জেলিস্ট (l) বি.সেটবাউন্ডস (100,100,75,75) a.add (খ) a.setSize (400,400) a.setVisible (সত্য) a.setLayout (নাল)} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস [ ]) {নতুন উদাহরণ ()}}

আউটপুট:

জেবেল ক্লাস

এটি একটি পাত্রে পাঠ্য রাখার জন্য ব্যবহৃত হয়। এটি জে কম্পোমেন্ট শ্রেণীর উত্তরাধিকার সূত্রে প্রাপ্ত।

আমদানি করুন জাভ্যাক্স.সুইং। * পাবলিক ক্লাসের উদাহরণ {পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস []) {জেফ্রেম এ = নতুন জেফ্রেম ('উদাহরণ') জেএলবেল বি 1 বি 1 = নতুন জেএলবেল ('এডুরেকা') বি 1.সেটবাউন্ডস (40,40, 90,20) a.add (b1) a.setSize (400,400) a.setLayout (নাল) a.setVisible (সত্য)}

আউটপুট:

জকমোবক্স ক্লাস

এটি জে কমপোয়েন্টিটি ক্লাস উত্তরাধিকার সূত্রে প্রাপ্ত এবং পছন্দগুলির পপ আপ মেনু প্রদর্শন করতে ব্যবহৃত হয়।

আমদানি জাভ্যাক্স.সুইং। * সর্বজনীন শ্রেণীর উদাহরণ {জেফ্রেম একটি উদাহরণ () {a = নতুন জেফ্রেম ('উদাহরণ') স্ট্রিং কোর্স [] = core 'কোর জাভা', 'অ্যাডভান্স জাভা', 'জাভা সার্লেট'} জকমোবক্স সি = নতুন জকমোবক্স (কোর্স) সি.সেটবাউন্ডস (৪০,৪০,৯০,২০) a.add (c) a.setSize (400,400) a.setLayout (নাল) a.setVisible (সত্য)} পাবলিক স্ট্যাটিক শূন্য মূল (স্ট্রিং আরগস [] ) {নতুন উদাহরণ ()}}

আউটপুট:

লেআউট ম্যানেজার

একটি ধারকের ভিতরে উপাদানগুলি সাজানোর জন্য আমরা লেআউট ম্যানেজারটি ব্যবহার করি। নিম্নলিখিত বেশ কয়েকটি লেআউট পরিচালক রয়েছে:

  1. সীমান্ত বিন্যাস

  2. প্রবাহ বিন্যাস

  3. গ্রিডব্যাগ লেআউট

    r প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্যবহারকারী সংস্থাগুলি

সীমান্ত বিন্যাস

প্রতিটি জেফ্রেমের ডিফল্ট লেআউট ম্যানেজার হ'ল বর্ডারলআউট। এটি পাঁচটি পর্যন্ত স্থানে উপাদান রাখে যা শীর্ষ, নীচে, বাম, ডান এবং কেন্দ্র is

ফ্লো লেআউট

ফ্লোএলআউট কেবল একের পর এক সারিতে উপাদানগুলি রাখে, এটি প্রতিটি জেপ্যানেলের জন্য ডিফল্ট লেআউট ম্যানেজার।

গ্রিডব্যাগ লেআউট

গ্রিডব্যাগলআউট উপাদানগুলিকে একটি গ্রিডে রাখে যা উপাদানগুলিকে একাধিক কক্ষ বিস্তৃত করতে দেয়।

উদাহরণ: চ্যাট ফ্রেম

আমদানি জাভ্যাক্স.সুইং। , 400) জেমনুবার ওব = নতুন জেমনুবার () জেমনু ওব 1 = নতুন জেমনু ('ফাইল') জেমনু ob2 = নতুন জেমনু ('সহায়তা') ob.add (ob1) ob.add (ob2) জেমনু আইটেম এম 11 = নতুন জেমনু আইটেম ('ওপেন ') জেমনু আইটেম এম 22 = নতুন জেমনু আইটেম (' হিসাবে সংরক্ষণ করুন ') ob1.add (এম 11) ob1.add (এম 22) জেপানেল প্যানেল = নতুন জেপানেল () // প্যানেল আউটপুটটিতে দৃশ্যমান নয় জেএলবেল লেবেল = নতুন জেবেল (' পাঠ্য প্রবেশ করান) ') জে টেক্সটফিল্ড টিএফ = নতুন জে টেক্সটফিল্ড (10) // 10 টি অক্ষর পর্যন্ত গ্রহণ করে জবি বাটন প্রেরণ = নতুন জেবাটন (' প্রেরণ ') জবটন রিসেট = নতুন জেবটন (' রিসেট ') প্যানেল.এডিডি (লেবেল) // উপাদান ফ্লো লেআউট প্যানেল ব্যবহার করে যুক্ত .এডিডি (লেবেল) // উপাদানগুলি ফ্লো লেআউট প্যানেল ব্যবহার করে যুক্ত হয়েছে। ) ফ্রেম.সেট কনটেন্টপেন ()। যুক্ত (বর্ডারআলআউট.এনআরটিএইচ, টিএফ) ফ্রেম.সেট কনটেন্টপেন () যোগ করুন (সীমান্ত লেআউট.সেন্টার, টা) ফ্রেম.সেটভিজিবল (সত্য)}

জাভাতে সুইং ব্যবহার করে জিইউআই তৈরির জন্য এটি একটি সাধারণ উদাহরণ।

এই নিবন্ধে আমরা জাভাতে সুইং এবং জাভা সুইং ক্লাসের শ্রেণিবিন্যাস নিয়ে আলোচনা করেছি। জাভাতে সুইংয়ের সাথে উপস্থিত সমস্ত উপাদানগুলির সাথে, অনুকূলিত GUI অ্যাপ্লিকেশনগুলি তৈরি করা সহজ হয়ে যায়। জাভা প্রোগ্রামিং ল্যাঙ্গুয়েজ হ'ল একটি স্ট্রাকচার্ড প্রোগ্রামিং ল্যাঙ্গুয়েজ এবং ক্রমবর্ধমান চাহিদার সাথে এটি সমস্ত ধারণাকে আয়ত্ত করা অত্যন্ত গুরুত্বপূর্ণ হয়ে ওঠে । আপনার শিখতে শুরু করতে এবং জাভা প্রোগ্রামিংয়ে বিশেষজ্ঞ হওয়ার জন্য, এডুরেকার নাম নথিভুক্ত করুন ।

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এই ‘জাভায় ইন জাভা’ নিবন্ধের মন্তব্য বিভাগে উল্লেখ করুন এবং আমরা যত তাড়াতাড়ি সম্ভব আপনার কাছে ফিরে আসব।