PDA

View Full Version : Opacity & Transparent



Amir Oveisi
جمعه 03 شهریور 1385, 23:25 عصر
سلام
وقتی یه فرم opacity کتمر از 100 داره transparetnt نمیشه!
چجوری میشه این مشکل رو حل کرد؟:متفکر:
ممنون

linux
شنبه 04 شهریور 1385, 00:58 صبح
قبلا جواب داده شده آن عدد باید بین 0 تا 1 باشه.

Amir Oveisi
شنبه 04 شهریور 1385, 01:04 صبح
میدونم که باید بین 1 و 0 باشه ولی باز مشکل داره

linux
یک شنبه 05 شهریور 1385, 19:44 عصر
مشه بگید چه مشکلی هست؟

Amir Oveisi
دوشنبه 06 شهریور 1385, 13:03 عصر
مشکلش اینه که وقتی opacity فرم 100% نیست خاصیت transparent کار نمیکنه!

dot_net_lover2
سه شنبه 07 شهریور 1385, 11:32 صبح
خاصیت Opacity اگر ۱ باشد که فرم به صورت عادی است و اگر کمتر از از ۱ و بیشتر از ۰ باشد که فرم را به صورت کمرنگ نشان میدهد و اگر ۰ باشد فرم بصورت کامل Transparent میشود.
حال مشکل شما کجا هست و کلا قصد دارید چه کاری انجام دهید. (بیشتر توضیح دهید تا بهتر جواب بگیرید)

Amir Oveisi
سه شنبه 07 شهریور 1385, 19:19 عصر
ای بابا:لبخند:
من که توضیح دادم :لبخند:
بیبن مثلا فرض کن که فرم به شکل مستطیل کامل نیست و گوشه هاش خم داره
خوب؟
خب حالا من واسه اینکه اون گوشه هاش دیده نشه از transparency key استفاده میکنم تا فقط مستطیل خمدار نشون داده بشه
خب؟
اگه تو این حالت opacity یک باشه که مشکلی نیست
ولی... وقتی opacity کمتر از 1 باشه اون transparency key کار نمیکنه یعنی فرم از مستطیل خم به مستطیل کامل تبدیل میشه!!!
حالا چجوری میشه این مشکل رو حل کرد؟:متفکر:

adelisardo
چهارشنبه 08 شهریور 1385, 10:48 صبح
باسلام خدمت دوستان عزیز

اگر من متوجه شده باشم هدف شما این است که فرمی را با شکلی غیر از حالت استاندارد آن نمایش دهید .
برای این کار درسته که شما می تونید از transparency key استفاده کنید ولی این کار دو ایراد بزرگ داره .
1- مقدار بسیار زیادی از وقت CPU رو تلف می کنه و در نتیجه نرم افزار شما کند خواهد شد .
2- در تمام سیستم عامل ها این مشخصه کار نخواهد کرد فقط در Xp , 2000 , Vista کار خواهد کرد .
اگر من منظور شما را درست متوجه شده باشم شما بایستی از مفهومی با نام
Region برای این کار بهره بگیرید .
اگر مایل به انجام این کار هستید بگید تا با کد بیشتر راهنماییتون کنم .

موفق باشید

Amir Oveisi
چهارشنبه 08 شهریور 1385, 22:00 عصر
حرف شما درست ولی من میگم که چرا وقتی opacity کمتر از یک هستش transparency key کار نمیکنه؟؟؟!!!!
چیکار میشه کرد که وقتی opacity کمتر از یکه فرم باز هم trancparent باشه؟
فکر میکنم سوالم واضح باشه!!
ممنون از همه

Amir Oveisi
شنبه 11 شهریور 1385, 16:08 عصر
از اساتید کسی نیس راهنمایی کنه؟

omid_Ahmadi
شنبه 11 شهریور 1385, 19:00 عصر
چیکار میشه کرد که وقتی opacity کمتر از یکه فرم باز هم trancparent باشه؟

من این کار رو توی ویژوال استودیو انجام دادم و مشکلی هم نداشت. برای مثال یه عکس توی یه PictureBox قرار بده، Opacity رو هم 30 تنظیم کن بعد transparency رو هم برابر با Control قرار بده. به این صورت فقط PictureBox با Opacity 30 در صفحه نشون داده میشه، نه کل فرم. حالا مشکل کجاست؟

Amir Oveisi
شنبه 11 شهریور 1385, 23:31 عصر
من که اینکارو میکنم نمیشه!!!
شما تست کنید ببینید وقتی فرم در حال حرکته باز هم مشکلی نیست؟؟
واسه من که هر دو مشکل دارن!

omid_Ahmadi
یک شنبه 12 شهریور 1385, 07:18 صبح
واسه من در هر دو حالت درست کار می کنه، اگر بخوای میتونم عکس فرم رو هم برات آپلود کنم تا ببینی.

dot_net_lover2
یک شنبه 12 شهریور 1385, 11:42 صبح
از Panel استفاده کن ٬ جواب میده.

RED-C0DE
چهارشنبه 05 مهر 1385, 12:27 عصر
درسته این مطلب مال چند وقت پیشه ولی من هم همین مشکل رو دارم.البته در خود محیط VS.Net2003 که دارم کار می کنم و کامپایل می کنم جواب می ده اما وقتی در محیط مجازی یا سیستم دیگه ای برنامه رو نصب می کنم باز هم بصورت یک فرم معمولی نشون می ده. و البته صحبت یکی از دوستان در مورد استفاده از Region فکر کنم بتونه این مشکل رو حل کنه.

seyedmostafa
چهارشنبه 21 آذر 1386, 08:54 صبح
با سلام
همانطوری که دوستمان گفت بهترین راه برای شما استفاده از new region است
اگر مایل بودید بگوئید تا دستوراتش رو براتون بزارم در ضمن خیلی کارهای بیشتر از این موردی که شما گفتید را می توان با این موردی که گفتم انجام داد

ir_programmer
چهارشنبه 21 آذر 1386, 10:00 صبح
میشه فرمتون رو ضمیمه کنید.

Payman62
چهارشنبه 21 آذر 1386, 12:17 عصر
با سلام
همانطوری که دوستمان گفت بهترین راه برای شما استفاده از new region است
اگر مایل بودید بگوئید تا دستوراتش رو براتون بزارم در ضمن خیلی کارهای بیشتر از این موردی که شما گفتید را می توان با این موردی که گفتم انجام داد
سلام.
هر چند تاپیک برای 1 سال پیشه. ولی کد رو بذار. دیگه پرسیدن نداره که.