برگزیده های پرشین تولز

سوالات برنامه نويسي : VB

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
یادم میاد یه تکست باکس سفارشی توی PSC بودش که میتونستی براش بک گران تعریف کنی. اگر پیدا کردم میگذارم ولی خودتم اگر سرچ کنی پیداش میکنی...راه حل خاصی با کنترلهای معمولی وی بی نیست، اگر بخوای کلا همه چیز رو اسکینابل کنی بیشتر از نوشتن کد خود برنامت باید کدهای جورواجوری برای این کار بنویسی، بهترین کار اینکه از سورسای آماده استفاده کنی که توی PSC هم پیدا میشه.
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
خب... ممنون از هر دو ! در مورد اینکه چرا VB رو ول نمیکنم ... من دلفی کار میکردم ... ولی از اول هم که یاد گرفتم بدم میومد ! بعد خواستم VB یاد بگیرم ... برای همین انقدر سوال میکنم ... حالا برم سراغ دات نت که فکر کنم همه سوال هارو که از پارسال پرسیدم دوباره بپرسم :D

راستی ! این قضیه EDITBOX هم ... من فقط این رو نمیخوام ! من میخواستم این برنامه رو یه جوری skinable کنم. و میخواستم طوری بشه که وقتی رنگ Background ـه فرم رو عوض کردم ( موقع تغییر skin‌) دیگه مجبور نشم رنگ هر چی تو فرم هست رو هم تغییر بدم ... بیشترین چیزی هم که الان به دردم میخوره ، transparent کردن Fram ها هست ! چون label که خودش داره ... editbox رو هم یه bg سفید میدم حالا ! ولی این frame هارو مثل اینکه تک تک باید تغیر بدم . برم با این چیزایی که گفتید ور برم ببینم چی میشه ...

ممنون :x
 

peiman

Registered User
تاریخ عضویت
23 فوریه 2003
نوشته‌ها
1,554
لایک‌ها
21
سن
36
مدیری که هستی
نبینم راجع به دلفی بد بگی

بگو چی میخوای من با دلفی برات سه سوت بنویسم

پ ن:برنامه نویس اگه برنامه نویس باشه زبان براش مهم نیست
 

saeedsmk

مدیر بازنشسته
تاریخ عضویت
6 سپتامبر 2003
نوشته‌ها
1,518
لایک‌ها
4
از این کد استفاده کن یک مثاله که تمام تکس باکس های یک فرم رو تغییر میده

کد:
Private lngColor As Long
Function fncMainTransparent(objMain As Form)
    Dim obj As Control
    If lngColor = objMain.BackColor Then Exit Function
    lngColor = objMain.BackColor
    For Each obj In objMain.Controls
        Select Case LCase(TypeName(obj))
            Case "frame"
                With obj
                    .BackColor = lngColor
                End With
            Case "textbox"
                With obj
                    .BackColor = lngColor
                    .Appearance = 0
                    .BorderStyle = 0
                End With
        End Select
    Next
End Function

Private Sub Form_Paint()
   fncMainTransparent Me
End Sub
امیدوارم کمک کنه :d
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
خیلی به درد بخور بود سعید جان . ممنون .


oqki28.gif


سوال بعدی ! فرض کنید یه فرم دارم ... توش هم یه عکس دارم که دایره هست ( gif هم هست ... دورش هم خالیه ) حالا میخوام موقع اجرا ... خود form رو transparent بکنم ! یعنی فقط دایره باشه ... و دیگه دور خود فرم دیده نشه !


و دیگه اینکه ... در مورد این properties ها میشه توضیح بدید دقیقا ... ( ماله form هست ) میدونم یه سریشون رو ... ولی بعضی هارو نه !

oqljpw.gif
 

Mehdi

مدیر بازنشسته
تاریخ عضویت
1 آگوست 2004
نوشته‌ها
5,602
لایک‌ها
49
محل سکونت
Anywhere
برا ترنسپرنت كردن كه سورس زياده ولي خوب اگه وقت كردم ميزارم يه خوبش رو
اون پروپرتيز ها هم
3-4-5 برا نقاشي هست
البته اونجوري كه من فهميدم:D يعني برا كارهاي گرافيكي كهروي فرم اعمال ميكني
دومي همون دكمه هاي بماكسيمايز و مينيمايز هست كه ابته يه گزينه ديگه هم بايد انتخاب بشه تا ديده نشن
بقيشم بعدا ميگم الان كار دارم:D
خدايي قشنگ گفتم مگه نه
39.gif
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
در مورد ترنسپرنت ... من کد دارم برای این کار ولی ور میداره کل ترنسپرنت form رو کمو زیاد میکنه ... من میخوام هرچی توش هست باشه ! فقط خود فرم اصلی دیده نشه ...

در مورد properties ها هم ... راستش هیچی متوجه نشدم از اینایی که گفتی ! :D من فقط اونایی رو که سفید گذاشتم میخوام بدونم .
 

Mehdi

مدیر بازنشسته
تاریخ عضویت
1 آگوست 2004
نوشته‌ها
5,602
لایک‌ها
49
محل سکونت
Anywhere
ترنسپرنت من بصورت اسكين هست
اوني كه شما ميگي الفا رو كم و زياد ميكنه
اين يكي
http://iranvig.com/modules.php?name=News&file=article&sid=3195
اين دوتا
http://iranvig.com/modules.php?name=News&file=article&sid=2985
اين سه تا
http://iranvig.com/modules.php?name=News&file=article&sid=14
اين چهارتا
http://iranvig.com/modules.php?name=News&file=article&sid=2139
اينم پنجمي
http://iranvig.com/modules.php?name=News&file=article&sid=2544

بازم ميخواي:D
در ضمن بزودي فروم اين سايت راه ميفته:D
شرمنده اين دفعه مجبوريد عضو بشيد و من بنا به دلايلي نميتونم يوزر و پسوردمو بدم
44.gif
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
به نقل از mehdvirus :
ترنسپرنت من بصورت اسكين هست
اوني كه شما ميگي الفا رو كم و زياد ميكنه
اين يكي
http://iranvig.com/modules.php?name=News&file=article&sid=3195
اين دوتا
http://iranvig.com/modules.php?name=News&file=article&sid=2985
اين سه تا
http://iranvig.com/modules.php?name=News&file=article&sid=14
اين چهارتا
http://iranvig.com/modules.php?name=News&file=article&sid=2139
اينم پنجمي
http://iranvig.com/modules.php?name=News&file=article&sid=2544

بازم ميخواي:D
در ضمن بزودي فروم اين سايت راه ميفته:D
شرمنده اين دفعه مجبوريد عضو بشيد و من بنا به دلايلي نميتونم يوزر و پسوردمو بدم
44.gif
ممنون ... عضو هستن تو iranvij البته کلی گشتم تا id و pass مو پیدا کردم ... ولی ....

اینا فکر میکنم بیشتر در جواب اون سوالم بود که میخواسم برنامه رو skinable کنم ! البته یکی ۲ تاش هم همیمی بود که من پرسیدم ... ولی یکی که باید تو یه image نقاشی میکردی ... یکیش هم نتونستم استفاده کنم .

من اون چیزی رو که لازم دارم میذارم تو پست بعدی ...
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
من میخوام فرمم مثل اون imag ی که گذاشتم بشه ... که gif هم هست و transparent !
 

فایل های ضمیمه

  • VB_PT.zip
    2.1 KB · نمایش ها: 5

Parham

Registered User
تاریخ عضویت
24 سپتامبر 2003
نوشته‌ها
1,042
لایک‌ها
2
خوب این یکی از چیزهایی که من یک زمانی خیلی دنبالش بودم. و البته الان دیگه تو دات نت مثل آب خوردن انجام میشه!
اینقدر از این دات نت تعریف میکنم تا برین سراغش!:happy:
خوب اون پروژه ضمیمه رو ببین. باید عکست مثل همون عکسی باشه که تو تصویره. مثلا اونجاهایی که قراره Transparent بشه یک رنگ ثابت داشته باشه که بقیه جاها نداره. (میتونه حتی وسطش خالی باشه) بعد عکس رو میندازی رو فرم(بدون کنترل ایمیج و یا پیکچر، فقط با خصوصیت Picture خود فرم.) بعد خصوصیت AutoRedraw رو True میکنی. BorderStyle باید None باشه و ScaleMode هم Pixel باشه. رنگی که Transparent میشه تو متد MakeRegion مشخص شده و بعد هم که اون کدهایی که تو رویداد Form Load هست. یک کدی هم برای حرکت دادن فرم نوشتم که تو رویداد Mouse Down هست.:)
 

فایل های ضمیمه

  • VB_PT.zip
    17 KB · نمایش ها: 43

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
ممنون پرهام جان ... کارم راه افتاد ... خیلی خوب بود . حالا یه سوال دیگه !

چرا VB عکس هارو PNG نمیتونه بخونه ؟ یا ICON های 32bit رو ( که تو برنامه ها XP ) هم نامیده میشه ... فرقش هم با GIF یا Icon های 24bit اینه که اون icon ها میتونه Transparetn ( یعنی مثلا یه قسمتیش alpha 50% ) داشته باشه ! چطوری میشه همچین چیزایی رو تو VB وارد کرد ؟
 

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
به نقل از شايان :
ممنون پرهام جان ... کارم راه افتاد ... خیلی خوب بود . حالا یه سوال دیگه !

چرا VB عکس هارو PNG نمیتونه بخونه ؟ یا ICON های 32bit رو ( که تو برنامه ها XP ) هم نامیده میشه ... فرقش هم با GIF یا Icon های 24bit اینه که اون icon ها میتونه Transparetn ( یعنی مثلا یه قسمتیش alpha 50% ) داشته باشه ! چطوری میشه همچین چیزایی رو تو VB وارد کرد ؟
خب وی بی به تنهایی این امکان رو نداره. میتونی از این کلاس و کدی که در این برنامه هست استفاده کنی. :)
 

فایل های ضمیمه

  • PNG_Reader19586512212005.zip
    149.8 KB · نمایش ها: 38

balabala

کاربر قدیمی پرشین تولز
کاربر قدیمی پرشین تولز
تاریخ عضویت
22 می 2005
نوشته‌ها
8,362
لایک‌ها
5,745
سن
41
محل سکونت
یه خورده اونورتر
به نقل از balabala :
خب وی بی به تنهایی این امکان رو نداره. میتونی از این کلاس و کدی که در این برنامه هست استفاده کنی. :)
البته این برنامه یک دی ال ال میخواد که میتونی از
http://www.winimage.com/zLibDll/zlib123dll.zip
دانلود کنی و باید اسمش رو از zlibwapi.dll تغییر بدی به zlibVB.dll و بگذاری داخل فولدر برنامت یا شاخه system ویندوزت! (یکمی دنگ و فنگ داره!)
 

Parham

Registered User
تاریخ عضویت
24 سپتامبر 2003
نوشته‌ها
1,042
لایک‌ها
2
به نقل از balabala :
خب وی بی به تنهایی این امکان رو نداره. میتونی از این کلاس و کدی که در این برنامه هست استفاده کنی. :)
البته یک دلیلش اینه که تکنولوژی وی بی ۶ بر میگرده به سال 1998 یعنی ۸ سال پیش! برین سراغ دات نت!:happy:
باور کن شایان جان که هیچ مشکلی نداره. گفتی که هر چی سوال پرسیدی تا حالا برای اون باید دوباره بپرسی ولی میبنی که تا اینجا این چند تا سوالت تو دات نت دیگه نیاز به پرسیدن نداشت!;)
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
دردسر داره ! میدونی قضیه چیه ... من یه دونه از این ocx ها گرفتم ... که توش ۱۰ - ۲۰ مدل Button داره ! بعد میشه روش icon گذاشت ... یا gif و اینا ... و چون Icon 32bit قبول نمیکنه ... مشکل دارم باهاش ... button ه خوشگل ساده که icon 32bit یا png قبول کنه سراغ نداری ؟ :D :X
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
اقا یه چیزی ! من همین الان بخوام برم dot Net !!! میتونم این برنامه و کاسه کوزم و جم کنم ببرم توش ؟! یا باید از اول بنویسم ؟! :D چه قدر از کد ها باهم فرق داره ؟ اخه الان یه کم زیاد شده برنامه م ... سخت برام از اول بخوام بنویسم. کلا چه چیزای از این vb6 رو دات نت ساپورت میکنه ؟
 

Parham

Registered User
تاریخ عضویت
24 سپتامبر 2003
نوشته‌ها
1,042
لایک‌ها
2
میبینم که بالاخره بله! ;)
نه زیاد نگران نباش! وقتی یک پروژه وی بی ۶ رو تو دات نت باز میکنی خودش برات تبدیل میکنه و در نهایت یک گزارش میده که چه مواردی احتمالا مشکل داره و برای تغییرات راهنمایی میکنه. اگر ویژوال استودیو نداری همین ۲۰۰۵ که جدید اومده بگیر.:)
 

شايان

مدیران قدیمی
تاریخ عضویت
2 سپتامبر 2003
نوشته‌ها
4,813
لایک‌ها
9
خب پس با این حساب ... باید برم سراغش !!! برم دنبال CD شو ... اینا ... در مورد ورژن ش و اینا یکم بگید ... جدید ترین ورژن ش که اومده چیه ؟
 

Parham

Registered User
تاریخ عضویت
24 سپتامبر 2003
نوشته‌ها
1,042
لایک‌ها
2
جدیدترین نسخه Visual Studio 2005 هست که با MSDN تو بازار یک دی وی دی هست. نسخه Express ویژوال بیسیک دات نت ۲۰۰۵ هم به صورت رایگان از سایت خود مایکروسافت میتونی دانلود کنی. تفاوتهای نسخه Express رو با این نسخه معمولش نمیدونم چیه. ولی تا جایی که خاطرم هست حتی برای کارهای تجاری متوسط کاملا جوابگوست. و جالب اینکه این نسخه‌های Express که شامل SQL Server 2005 Express Edition هم میشه به صورت کاملا رایگانه البته از زمان عرضه به مدت یکسال و تا چند ماه دیگه رایگان نخواهد بود. ضمنا فروش نرم‌افزارهای تهیه شده توسط این نسخه‌های رایگان به صورت تجاری از نظر مایکروسافت مشکلی نداره و مجوزش داده شده.
 
بالا