গ্রাফিক ডিসপ্লে প্রযুক্তির উন্নতির সাথে অপারেটিং সিস্টেমগুলির এপিআইও উন্নত হয়েছে, প্রোগ্রামারদের অ-মানক ইন্টারফেস উপাদানগুলির বিকাশের জন্য আরও এবং আরও বেশি সুযোগ সরবরাহ করে। সুতরাং উইন্ডোজ 2000 অপারেটিং সিস্টেমের একটি উদ্ভাবন হ'ল স্তরযুক্ত উইন্ডোজ, যার কিছু অংশ রূপান্তরকারী হতে পারে। শীঘ্রই, স্তরযুক্ত উইন্ডোগুলির সাথে কাজ করার জন্য এপিআই-র একটি বিবরণ এমএসডিএন-তে উপলভ্য। তবে প্রোগ্রামারদের ফোরামে, উইন্ডোটিকে কীভাবে অর্ধ-স্বচ্ছ করতে হবে সে সম্পর্কে এখনও প্রশ্ন জিজ্ঞাসা করা হচ্ছে।
প্রয়োজনীয়
- - সংকলক;
- - উইন্ডোজ এসডিকে বা উইন্ডোজ প্রোগ্রামিংয়ের ফ্রেমওয়ার্ক।
নির্দেশনা
ধাপ 1
আপনি অর্ধ-স্বচ্ছ করতে চান উইন্ডোতে একটি হ্যান্ডেল পান। একটি উইন্ডো সন্ধান করুন বা তৈরি করুন। এটি তৈরির জন্য, তৈরি উইন্ডো, ক্রিয়েটওয়াইনডেক্স এপিআই ফাংশনগুলি ব্যবহার করুন বা ব্যবহৃত ফ্রেমওয়ার্কের শ্রেণিভুক্ত এই ফাংশনগুলির চারপাশে মোড়ক পদ্ধতিগুলি ব্যবহার করুন। তৈরি উইন্ডো ফাংশনটির প্রোটোটাইপটি দেখতে এরকম দেখাচ্ছে:
এইচডব্লিউএনডি ক্রিয়েট উইন্ডো (এলপিসিটিএসটিআরপি ক্লাসনাম, এলপিসিটিএসটি এলপিউন্ডো নাম, ডাব্লুআরডাব্লু স্টাইল, ইন্ট এক্স, ইন্ট ওয়াই, ইন্ এন প্রস্থ,
ইন্ট এন হাইাইট, এইচডব্লিউএনডি এইচডব্লিউড প্যারেন্ট, এইচএমএনইউ এইচএমেনু, হিস্ট্যান্স হিস্ট্যান্স, এলপিভিয়েড এলপিপ্রাম);
আপনি দেখতে পাচ্ছেন, ফাংশনটি এক্সিকিউশনের ফলাফল হিসাবে তৈরি উইন্ডোটিতে একটি হ্যান্ডেল ফেরত দেয়। যদি কোনও মোড়কের ক্লাস ব্যবহার করা হয়, হ্যান্ডেলটি পেতে তৈরি উইন্ডোর সাথে সম্পর্কিত অবজেক্টে এর পদ্ধতিগুলি ব্যবহার করুন।
ধাপ ২
উইন্ডো সন্ধান করা ফাইন্ড উইন্ডো, ফাইন্ড উইন্ডোএক্স, এনামউইন উইন্ডোজ, এনামচিল্ড উইন্ডোস, এনামথ্রেড উইন্ডো এবং তাদের সংমিশ্রণগুলি ব্যবহার করে করা যেতে পারে। উইন্ডোফ্রোমপয়েন্ট এবং চাইল্ড উইন্ডোফ্রন্ট পয়েন্ট ফাংশনগুলি ব্যবহার করে আপনি একটি নির্দিষ্ট অঞ্চলের মধ্যে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে পারেন।
ধাপ 3
উইন্ডোটি প্রসারিত স্টাইলের WS_EX_LAYERED এ সেট করুন। সেট উইন্ডোলং এপিআই বা মোড়কের জিনিসগুলির সম্পর্কিত পদ্ধতিগুলি ব্যবহার করুন। সেট উইন্ডোলং ফাংশনটি সম্পূর্ণরূপে পরিবর্তনযোগ্য উইন্ডো প্যারামিটার তথ্যকে প্রতিস্থাপন করে, সুতরাং স্টাইলের পতাকাগুলির সেটটির পূর্ববর্তী মানটি পুনরুদ্ধার করতে এটি getWindowLong ফাংশনের সাথে একত্রে ব্যবহার করুন। উদাহরণস্বরূপ, শৈলীটি এভাবে পরিবর্তন করা যেতে পারে:
:: সেট উইন্ডোলং (এইচডব্লিউড, জিডাব্লুএল_এক্সএসটিইএল,:: গেটউইন্ডোলং (এইচডাব্লুডেন্ড, জিডাব্লুএল_এক্সএসটাইল));
পূর্ববর্তী ধাপে বর্ণিত ক্রিয়া সম্পাদনের ফলে উইন্ডো হ্যান্ডেলটি এখানে পাওয়া যায়।
পদক্ষেপ 4
উইন্ডোটি অর্ধ-স্বচ্ছ করুন। সেটলিয়ার্ডওয়াইন্ডঅ্যাট্রিবিউটস এপিআই বা মোড়ক ক্লাসের পদ্ধতিগুলি ব্যবহার করুন। সেটলেয়ারড উইন্ডোঅ্যাট্রিবিউট ফাংশন প্রোটোটাইপটি এর মতো দেখাচ্ছে:
বোল সেটলেয়ারড উইন্ডোঅ্যাট্রিবিউটস (এইচডব্লিউএনডি এইচডব্লিউএনডি, রঙিন crKey, BYTE বালফা, DWORD dwFlags);
পদক্ষেপ 5
ফাংশনের hwnd প্যারামিটারটি অবশ্যই প্রথম ধাপে প্রাপ্ত একটি বৈধ উইন্ডো হ্যান্ডেল হতে হবে। CrKey পরামিতি একটি রঙ চাবি যা আধা স্বচ্ছ অঞ্চলগুলি সংজ্ঞায়িত করতে ব্যবহৃত হয়। BAlpha প্যারামিটার ট্রান্সলুসেন্সির মান নির্দিষ্ট করে। বালফার প্যারামিটার মান 0 এর সমান হলে "আধা-স্বচ্ছ" অঞ্চলগুলি সম্পূর্ণ স্বচ্ছ হবে। যদি বাল্ফা প্যারামিটারটি 255 হয় তবে সেগুলি সম্পূর্ণ অস্বচ্ছ। DwFlags পরামিতি উইন্ডো সামগ্রীর আরও প্রদর্শন মোড নির্ধারণ করে। LWA_COLORKEY পতাকাটি যখন dwflags মানের সাথে অন্তর্ভুক্ত করা হয়, উইন্ডোর সেমেন্ট্রান্সেন্ট প্যারেন্ট অঞ্চলগুলি রঙ কীটির উপর ভিত্তি করে নির্ধারিত হবে। যখন LWA_ALPHA পতাকা সক্ষম করা হয়, তখন বাল্ফা পরামিতি ট্রান্সলুসেন্সির মান নির্ধারণ করতে ব্যবহৃত হবে।
পদক্ষেপ 6
পুরো উইন্ডোটিকে অর্ধ-স্বচ্ছ করতে, পছন্দসই বালফা প্যারামিটার মান, এলডাব্লুএ_এলএইচএইচএইচ পতাকা দ্বারা সেটলায়ারড উইন্ডোঅ্যাট্রিবিউट्सকে কল করুন, তবে কোনও এলডাব্লুএ_ক্লোরকি পতাকা নেই। ফাংশনের প্রথম প্যারামিটার হিসাবে পাওয়া উইন্ডো হ্যান্ডেলটি ব্যবহার করুন। উদাহরণস্বরূপ, উইন্ডোটিকে অর্ধেক স্বচ্ছ করতে কলটি ব্যবহার করুন:
:: সেটলেয়ারড উইন্ডোঅ্যাট্রিবিউটস (এইচডাব্লুন্ড, আরজিবি (0, 0, 0), 128, এলডাব্লুএ_এলএফএ);