আমাদের আজকের আলোচনার বিষয় ভিজ্যুয়াল ইন্টারফেস কম্পোনেন্ট – যা অধ্যায় ২ ”ভিজ্যুয়াল বেসিকের ধারণাসমূহ” এর অন্তর্ভুক্ত। বর্তমান বিশ্বের সর্বাধুনিক প্রযুক্তি হচ্ছে কম্পিউটার প্রযুক্তি। কারণ শিল্পকারখানা, গবেষণা, শিক্ষাপ্রতিষ্ঠান, চিকিৎসাশাস্ত্র ইত্যাদি সকল ক্ষেত্রই আজ কম্পিউটার অটোমেটেড। কম্পিউটার অটোমেশনের সঙ্গে কম্পিউটার প্রোগ্রামিং ও প্রোগ্রামিং লেখার জন্য প্রোগ্রামিং ল্যাংগুয়েজ অত্যন্ত গুরুত্বপূর্ণ।
তাই শিক্ষা ও গবেষণার জন্য প্রোগ্রামিং ল্যাংগুয়েজ অধ্যয়ন একটি অতি আবশ্যকীয় বিষয়। বিষয়টি অত্যন্ত গুরুত্বসহ বিবেচনা করে বর্তমানে কারিগরি শিক্ষার সকল টেকনোলজিতে কম্পিউটার প্রোগ্রামিং ল্যাংগুয়েজ বিষয়কে আবশ্যিক করা হয়েছে ।
ভিজ্যুয়াল ইন্টারফেস কম্পোনেন্ট
ভিজ্যুয়াল প্রোগ্রামিং এর ক্ষেত্রে ভিজ্যুয়াল ইন্টারফেস একটি গুরুত্বপূর্ণ বিষয়। প্রতিটি ভিজ্যুয়াল ইন্টারফেসে বিভিন্ন ধরনের কম্পোনে (Component) বিদ্যমান। মূলত টুল বক্সে বিদ্যমান যাবতীয় টুল বা কন্ট্রোলসমূহকে ভিজ্যুয়াল ইন্টারফেস কম্পোনেন্ট বলে।

কম্পোনেন্ট তালিকা : ভিজ্যুয়াল বেসিকে যে সকল ইন্টারফেস কম্পোনেন্ট ব্যবহৃত হয় সেগুলো হচ্ছে-
- ফর্ম বা উইন্ডো (Window)
- বাটন (Buttons)
- টেক্সট বক্স (Text Box)
- চেক বক্স (Check Box)
- লিস্ট বক্স (List Box)
- -কম্বো বক্স (Combo Box)
- ফ্রেম (Frame)
- লেবেল (Label)
- ইমেজ বক্স (Image Box)
- হরাইজন্টাল স্ক্রলবার (Horizontal Scroll Bar)
- ভার্টিক্যাল স্ক্রল বার (Vertical Scroll Bar)
- টাইমার (Timer)
- ড্রাইভ লিফট বক্স (Drive List Box)
- ডিরেক্টরি লিস্ট বক্স (Directory List Box)
- ফাইল লিস্ট বক্স (File List Box)
- লাইন (Line)
- শেপ (Shape)
- পিকচার বক্স (Picture Box)
- ডাটা কন্ট্রোল (Data Control)
- ও.এল.ই কন্ট্রোল (OLE Control)
উইন্ডো (Window): উইন্ডো (যাকে কখনো কখনো Form বলা হয়) হচ্ছে ভিজ্যুয়াল ইন্টারফেস কম্পোনেন্ট সমূহের মধ্যে মূল উপাদান। কোন অ্যাপ্লিকেশনে User interface এর জন্য উইন্ডো হচ্ছে ভিত্তি (Base) স্বরূপ। কারণ ইউজার ইন্টারফেসের সকল কম্পোনেন্ট সমূহ এর উপর বিদ্যমান। পেইন্টিং (Painting) এর ক্ষেত্রে ক্যানভাস (Canvas) যেমন, ইউজার ইন্টারফেসের ক্ষেত্রে উইন্ডো ও তেমন।
কারণ ক্যানভাস ছাড়া যেমন চিত্র/ছবি আঁকা চলেনা ঠিক তেমনি উইন্ডো ছাড়া ও ইউজার ইন্টারফেস কল্পনা করা যায় না। তাই ইউজার ইন্টারফেস ডিজাইন প্রক্রিয়াটিকে “Painting on the Canvas” নামে ও অভিহিত করা হয়। যখন কোন application শুরু হয় তখন একটি উইন্ডো Open হয় এবং এটি memory তে loaded হয় সাথে সাথে User interface এর সকল Component সমূহ Window তে placed হয় যাদেরকে ব্যবহার করে application এ প্রয়োজনীয় কার্য সমাধান করা হয়।
বাটন (Buttons) : বাটন হচ্ছে ইউজার ইন্টারফেস কম্পোনেন্ট সমূহের মধ্যে সবচেয়ে জনপ্রিয় একটি কম্পোনেন্ট। এটি কোন কাজ শুরু করার জন্য ব্যবহৃত হয়। বাটনে বিদ্যমান টেক্সট এর মাধ্যমে কোন কাজটি শুরু হবে তা বুঝানো হয়। যেমন Add বাটনের মাধ্যমে বুঝা যায় যে কোন কিছু সংযুক্ত (Add) করতে হবে।
বাটনে সংযুক্ত (Associated) কাজটি শুরু করার জন্য সংশ্লিষ্ট বাটনে Click করতে হয়। তবে বাটন সংশ্লিষ্ট যে কাজটি শুরু করা হয় তার Code মূলত প্রোগ্রামার গন লিখে দিয়ে থাকেন। ইউজার ইন্টারফেসের ক্ষেত্রে বিভিন্ন ধরনের বাটন (Button) লক্ষ্য করা যায়। যেমন- কমান্ড বাটন (Command Buttons) বা পুশ বাটন (Push Buttons), অপশন বাটন (Options Buttons) ইত্যাদি।
কমান্ড বাটন (Command Button): উইন্ডোজের এমন কোন প্রোগ্রাম আছে বলে মনে হয় না যা কমান্ড বাটন ব্যবহার করেনি, মূলত প্রোগ্রামে যে Ok কিংবা Yes বা No এ ধরনের যে বাটন গুলো দেখে থাকি তাই কমান্ড বাটন। ভিজ্যুয়াল বেসিকের মাধ্যমে তৈরি আমাদের প্রোগ্রামে এ ধরনের বাটন সংযুক্ত করার জন্য কমান্ড বাটন নামের কন্ট্রোল ব্যবহার করা হয়।
অপশন বাটন (Option Button): প্রোগ্রামের কোন একটা কাজে একাধিক অপশন থেকে ব্যবহারকারী (User) শুধুমাত্র একটা অপশন সিলেক্ট করতে পারবে এই ধরনের পরিস্থিতিতে আমরা অপশন বাটন কন্ট্রোল ব্যবহার করতে পারি।
টেক্সট বক্স (Text Box): মূলত ব্যবহারকারীর কাছ থেকে কোন তথ্য (Information) নেয়ার জন্য কিংবা কোন text প্রদর্শনের (Display) জন্য Text Box ব্যবহার করা হয়। এটিকে অনেক সময় Edit field কিংবা Edit Box ও বলে। ইউজার ইন্টারফেস প্রতিটি information এর জন্য আলাদা আলাদা text box display করে থাকে, উদাহরণ স্বরূপ কোন অ্যাপ্লিকেশনে-
(i) Name
(ii) Address
(iii) Phone Number
এই তিনটি information আছে। তাই User Interface ও তিনটি Text Box (Name, Address, Phone number) display করবে।
চেক বক্স (Check Box): প্রোগ্রামে কোন True/False কিংবা Yes/No ধরনের Option রাখার জন্য User interface চেক বক্স (check Box) নামক কম্পোনেন্টটি ব্যবহার করা হয়।
লিস্ট বক্স (list Box) : একাধিক অপশন থেকে এক বা একাধিক অপশন সিলেক্ট করার জন্য চেক বক্স ব্যবহার করা হয়। কিন্তু অপশনের তালিকা যদি বড় হয় এবং ব্যবহারকারী যদি ঐ সকল Option list থেকে এক/ একাধিক/সবকয়টি Option select করতে পারেন তবে User Interface এর ঐ বক্স কে লিস্ট বক্স (list box) বলে।
প্রোগ্রামিং এর ভাষায় লিস্ট বক্সকে visual Array বলা যায়, যেখানে বিভিন্ন আইটেমগুলো (বক্সের মধ্যে যে অপশনগুলো প্রদর্শিত হচ্ছে তাদের এক একটাকে লিস্ট বক্সের আইটেম বলা হয়) হল Array ‘র একেকটি element.
লিস্ট বক্সের সুবিধা হলঃ
১। লিস্ট বক্সে বিদ্যমান সকল Option মুখস্থ করে রাখার প্রয়োজন হয় না,
২। বৈধ নয় এমন কোন Option User ইচ্ছে করলেই list এ enter করতে পারেন না। কম্বো বক্স (Combo Box): কম্বো বক্সের মাধ্যমে ইউজার ইন্টারফেস টেক্সট বক্স ও লিস্ট বক্স উভয় বক্সের সুবিধা প্রদান করে থাকে। অর্থাৎ কম্বো বক্সে লিস্ট ও টেক্সট উভয় বক্সই বিদ্যমান।
লিস্ট বক্স অংশে প্রদর্শিত একাধিক আইটেম থেকে যে কোন একটা আইটেম সিলেক্ট করা যায় এবং সিলেক্ট করা আইটেমটা টেক্সট বক্স অংশে প্রদর্শিত হয়। লিস্ট বক্সের চেয়ে কম্বো বক্সের সুবিধা হল এই যে, কম্বো বক্স কম জায়গা নেয়। কেননা প্রাথমিক ভাবে কম্বোবক্সের শুধুমাত্র টেক্সটবক্স অংশটাই প্রদর্শিত হয়। এক্ষেত্রে টেক্সটবক্সের পাশে যে ড্রপ ডাউন বাটন থাকে তাতে ক্লিক করলে লিস্ট বক্স অংশটা প্রদর্শিত হয়।

ফ্রেম (Frames): মূলত একাধিক চেকবক্স কিংবা অপশন বাটনকে একটা গ্রুপে পরিণত করার জন্য User Interface এ ব্যবহৃত কম্পোনেন্টকে ফ্রেম (Frame) বলে।
ইমেজ বাটন (Image Button): ইউজার ইন্টারফেসের এই কম্পোনেন্টটি প্রোগ্রামে গ্রাফিক্স ফাইল বা Image সংযোজনের জন্য ব্যবহৃত হয়। Image Button এর মাধ্যমে bmp, ico, wmf, jpg, gif প্রভৃতি ফরম্যাটের ফাইল নিয়ে কাজ করা যায়। লেবেল (Label): এই কম্পোনেন্টটি ব্যবহার করে ফর্মে কোন লেবেল (Label) সংযুক্ত করা যায়। লেবেলে যে লেখা প্রদর্শির হবে তা সাধারণত ব্যবহারকারীর পক্ষে পরিবর্তন করা সম্ভব নয়।