কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে

সুচিপত্র:

কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে
কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে

ভিডিও: কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে

ভিডিও: কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে
ভিডিও: How much load, How many amperes Circuit Breaker to apply? 2024, মে
Anonim

উইন্ডোতে ইউজার ইন্টারফেসের ধারণাটি একটি উইন্ডোর ধারণার উপর ভিত্তি করে। ডায়ালগ, বোতাম, কন্ট্রোল প্যানেল, তালিকা সমস্ত উইন্ডো। অতএব, আপনার নিজের বা অন্য কারোর অ্যাপ্লিকেশনটির ইন্টারফেসের কোনও উপাদান দিয়ে কোনও ক্রিয়া সম্পাদন করার জন্য, আপনাকে উইন্ডো হ্যান্ডেলটি নেওয়া দরকার।

কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে
কিভাবে একটি উইন্ডোতে একটি হ্যান্ডেল পেতে

প্রয়োজনীয়

  • - প্ল্যাটফর্ম এসডিকে প্যাকেজ;
  • - সংকলক

নির্দেশনা

ধাপ 1

এটি তৈরি করে উইন্ডোটিতে হ্যান্ডেলটি পান। ক্রিয়েট উইন্ডো বা ক্রিয়েট উইন্ডোএক্স এপিআই ফাংশনগুলিতে কল করুন, বা ব্যবহৃত ফ্রেমওয়ার্ক বা লাইব্রেরির ক্লাসগুলির যথাযথ মোড়কের পদ্ধতিগুলি (প্রয়োজনীয় বস্তুগুলিতে) কল করুন যা উইন্ডোজ বা নিয়ন্ত্রণগুলির সাথে কাজ করার কার্যকারিতা আবদ্ধ করে Create সফল নির্মাণে উইন্ডো হ্যান্ডেল। যদি ব্যর্থভাবে ডাকা হয়, তারা NULL ফেরত দেয়। GetLastError API ফাংশনটি ব্যবহার করে ত্রুটির কারণ কোডের জন্য অনুরোধ করা যেতে পারে। ক্রিয়েট উইন্ডো এবং ক্রিয়েট উইন্ডোএক্স ফাংশনগুলির প্যারামিটারগুলির প্রোটোটাইপগুলি এবং বিশদ বিবরণগুলি https://msdn.mic Microsoft.com/en-us/library/windows/desktop/ms632679%28v=vs.85%29.aspx লিঙ্কগুলি থেকে পাওয়া যাবে এবং HTTP: // এমএসডিএন। মাইক্রোসফট.কম / এন-ইউএস / লাইব্রেরি / উইন্ডোজ / ডেস্কটপ / ms632680% 28v = বনাম 85৮% 29.aspx বিভিন্ন ফ্রেমওয়ার্কের ক্লাস ব্যবহার করার সময়, অপারেটিং সিস্টেম উইন্ডো অবজেক্টগুলির সৃষ্টি স্পষ্টভাবে ঘটতে পারে (একটি পদ্ধতি কল করে) বা স্পষ্টভাবে (RAII কৌশল বাস্তবায়ন)। অতএব, রেডিমেড আর্নিজাইজড অবজেক্টে উইন্ডো হ্যান্ডেলটি পাওয়া ভাল। আপনি সেই ক্লাসগুলির পদ্ধতিগুলি সম্পর্কে শিখতে পারেন যা সংশ্লিষ্ট কাঠামোর ডকুমেন্টেশনে উইন্ডো হ্যান্ডেলটি বস্তুর দ্বারা আবৃত করে দেয় return উদাহরণস্বরূপ, এমএফসি-তে একটি অনুরূপ পদ্ধতি হ'ল সিডব্লুন্ড শ্রেণীর গেটসেফহ্যান্ড।

ধাপ ২

একটি উইন্ডো অনুসন্ধান করে এটির একটি হ্যান্ডেল পান। আপনি যে ফ্রেমওয়ার্কটি ব্যবহার করছেন তার জন্য FindWindow এবং FindWindowEx API ফাংশন বা যথাযথ শ্রেণীর অবজেক্ট র‌্যাপারগুলি ব্যবহার করুন Find ফাইন্ডউইন্ডো যদি পাওয়া যায় তবে শীর্ষ স্তরের উইন্ডোতে একটি হ্যান্ডেল ফেরত দেয় বা ব্যর্থতার জন্য NULL দেয়। শ্রেণীর নাম এবং উইন্ডো শিরোনাম দ্বারা অনুসন্ধান করা হয়। ফাংশনটির প্যারামিটারগুলি এবং দিকগুলির বিবরণটি https://msdn.microsoft.com/en-us/library/windows/desktop/ms633499%28v=vs.85%29.aspx লিঙ্কে পাওয়া যাবে of FindWindowEx ফাংশন FindWindow এর অনুরূপ পার্থক্য কেবলমাত্র পার্থক্য হ'ল এটি শিশু উইন্ডোগুলির জন্য অনুসন্ধান করে। FindWindowEx এর জন্য ডকুমেন্টেশনটি https://msdn.microsoft.com/en-us/library/windows/desktop/ms633500%28v=vs.85%29.aspx এ উপলব্ধ।

ধাপ 3

তাদের সেটগুলি তালিকাভুক্ত করার সময় উইন্ডোটিতে হ্যান্ডেলটি সন্ধান করুন। আপনি যে ফ্রেমওয়ার্কটি ব্যবহার করছেন সেগুলির EnumWindows, EnumChildWindows, EnumThreadWindows, বা শ্রেণীর অবজেক্টের পদ্ধতিগুলি API ব্যবহার করুন En EnumWindows এবং EnumChildWindows ফাংশনগুলি যথাক্রমে শীর্ষ স্তরের উইন্ডো এবং শিশু উইন্ডোগুলি গণনা করবে। EnumThreadWindows ফাংশনটি নির্দিষ্ট থ্রেডের সমস্ত নন-চাইল্ড উইন্ডোগুলিকে গণ্য করে। এই ফাংশনগুলির প্রতিটি একটি কলব্যাক পদ্ধতিতে একটি পয়েন্টারটি পাস করতে হবে, যা অপারেশনের সময় পাওয়া উইন্ডোগুলির হ্যান্ডলগুলি পরামিতি হিসাবে প্রেরণ করা হবে en গণনা ফাংশনগুলিকে একত্রিত করে, কলব্যাক পদ্ধতিতে উইন্ডো বৈশিষ্ট্যগুলি অর্জন এবং বিশ্লেষণ করে আপনি হ্যান্ডেলটি সন্ধান করতে পারবেন প্রয়োজনীয় উইন্ডো বর্ণিত ফাংশনগুলির জন্য ডকুমেন্টেশনগুলি লিঙ্কগুলিতে দেওয়া হয়েছে: - এনামউইনড উইন্ডোজ: https://msdn.microsoft.com/en-us/library/windows/desktop/ms633497%28v=vs.85%29.aspx; - EnumChildWindows: HTTP: // এমএসডিএন.মাইক্রোসফটকম /en-us/library/windows/desktop/ms633494%28v=vs.85%29.aspx; - এনামথ্রেড উইন্ডোজ: https://msdn.microsoft.com/en-us/library / উইন্ডোজ / ডেস্কটপ /ms633495%28v=vs.85%29.aspx।

পদক্ষেপ 4

পরিচিত স্থানাঙ্কে একটি উইন্ডোতে একটি হ্যান্ডেল পান। উইন্ডোফ্রোমপয়েন্ট, চাইল্ড উইন্ডোফ্রন্টপয়েন্ট, চাইল্ড উইন্ডো ফ্রমপয়েন্টপেক্স ফাংশন নির্দিষ্ট পয়েন্টের সাথে সম্পর্কিত উইন্ডোগুলিতে হ্যান্ডলগুলি ফেরত দেয় উইন্ডোফ্রোমপয়েন্ট ফাংশনটি ব্যবহার করা সবচেয়ে সহজ, তবে লুকানো বা অক্ষম উইন্ডোগুলির জন্য হ্যান্ডলগুলি ফেরত দেয় না। আপনি এর ব্যবহার সম্পর্কে ডকুমেন্টেশনগুলি https://msdn.microsoft.com/en-us/library/windows/desktop/ms633558%28v=vs.85%29.aspx এ খুঁজে পেতে পারেন Child প্রদত্ত পয়েন্টের অন্তর্ভুক্ত প্রদত্ত প্যারেন্ট উইন্ডোর উইন্ডোজ। এই ক্ষেত্রে, চাইল্ড উইন্ডো ফ্রেমপয়েন্টেক্স এর আচরণটি অতিরিক্ত প্যারামিটার ব্যবহার করে নমনীয়ভাবে নিয়ন্ত্রণ করা যায়। এই ফাংশনগুলির জন্য ডকুমেন্টেশনগুলি লিঙ্কগুলি সরবরাহ করে: - চাইল্ড উইন্ডোফ্রন্টপয়েন্ট: https://msdn.microsoft.com/en-us/library/windows/desktop/ms632676%28v=vs.85%29.aspx; - চাইল্ড উইন্ডোফ্রোমপয়েন্টেক্স: HTTP: // এমএসডিএন.মিক মাইক্রোসফট /en-us/library/windows/desktop/ms632677%28v=vs.85%29.aspx।

প্রস্তাবিত: