
نوشته شده توسط
ASKaffash
سلام
شما جواب گرفتید ؟ من چند سالی است که جواب این سئوال را پیدا نکرده ام!! (یک کنترل Image و روی آن یک کنترل مثلا Label)
ببینید دوستان عزیز. مکانیزم کار به این صورته که برای بعضی از کنترل ها مانند لیبل ها، وقتی که شما حالت رنگ را رو حالت شفاف (Trancparent) قرار میدین، عکسی که درون کنترل والد (Parrent Controler) اون قرار گرفته چک میشه و درصورت وجود مختصاتی از عکس که لیبل روش قرار گرفته عینن درون پس زمینه لیبل طراحی میشه. برای همینه که وقتی شما یک لیبل را روی یک Form و یا یک Panel عکس دار میگذارید کاملا شفاف دیده میشه اما وقتی که روی یک PictureBox قرار میدین هیچ تغییری نمی بینید.
برای مثال این عکس را نگاه کنید :
فرم با رنگ قالب سبز.
3تا لیل که هر 3 شفاف شدند.
1 پنل با رنگ غالب آبی.
1 pictureBox با رنگ غالب قهوه ای یا کرم.
از بالا اولین لیبل روی فرم قرار داره و میبینید که عکس اون قسمت فرم را به خودش اختصاص داده و حتی بخشی که روی پنل افتاده هم با عکس روی فرم پوشیده شده.
لیبل دوم درون پنل قرار داره و به درستی عکس داخل پنل را به خودش گرفته. چون والد اون پنل اس نه فرم
و لیبل سوم هم که روی pictureBox قرار گرفته باز عکس روی فرم را به خودش گرفته، علت اونم اینه که والد اون هم فرم است. حتی اگر کاملا روی pictureBox قرار میگرفت بازهم عکس فرم را به خودش میگرفت نه pictureBox را. چون pictureBox نمی تونه کنترل فرزند داشته باشه.
اگر برای پنل عکس در نظر نمی گرفتیم پنل هم عکس والد خودش که فرم باشه را به خودش می گرفت.
به همین سادگی. حالا شما باید با علم به این موضوع از این ابزار ها در طراحی خودتون استفاده کنید.