PDA

View Full Version : سوال: قرار گرفتن فرم روی فرم های دیگر



فاطمه وطن دوست
پنج شنبه 17 بهمن 1387, 19:16 عصر
سلام

فرض کنید میخوایم دو تا فرم رو به صورت همزمان باز کنیم. ( نمایش بدیم )

فرم 2 در رویداد Load فرم 1 فراخوانی (show ) میشه ، و فرم 2 همواره روی فرم 1 قرار میگیره !

دستور چیست ؟

xxxxx_xxxxx
پنج شنبه 17 بهمن 1387, 19:36 عصر
سلام
خب مي خوايد چه كار كنيد؟؟؟
هر دو فرم فعال باشند؟ كه نميشه.
وقتي دو فرم رو به صورت همزمان هم باز كنيد باز يكي ديرتر از اون يكي لو ميشه كه مياد رو.
همزمان هم كه نميشه. بالاخره اول يكي لود ميشه بعد اون يكي.
دقيقاً منظورتونو نفهميدم

loads
جمعه 18 بهمن 1387, 00:50 صبح
Form2.Show 0, Me

parselearn
جمعه 18 بهمن 1387, 01:09 صبح
form2.show 1

3dboy1
جمعه 18 بهمن 1387, 05:59 صبح
form2.show , me

فاطمه وطن دوست
جمعه 18 بهمن 1387, 11:39 صبح
سلام

اگر بخوایم دو تا ریسورس رو به پروژه اضافه کنیم چی کار باید انجام بدیم ؟

پیام میده فقط یک ریسورس قابل اضافه شدن هست. چرا ؟

warden
جمعه 18 بهمن 1387, 13:52 عصر
البته دقیق یادم نمیاد ولی از MDIChild میتونی استفاده کنی یه فرم توی فرم اصلی میتونی بزاری

فاطمه وطن دوست
جمعه 18 بهمن 1387, 17:10 عصر
دوستان پاسخ پست 6 رو بهم بگید . میشه یا نه ؟

xxxxx_xxxxx
جمعه 18 بهمن 1387, 18:59 عصر
اگر بخوایم دو تا ریسورس رو به پروژه اضافه کنیم چی کار باید انجام بدیم ؟

پیام میده فقط یک ریسورس قابل اضافه شدن هست. چرا ؟
دو تا ريسورس نميشه به برنامه اضافه كرد. ولي ميشه هر چندتا فايل رو تو يك ريسورس قرار داد.
چون همون كاري كه مي خوايد با دو تا ريسورس انجام بديد، با يك ريسورس هم ميشه.

موفق باشيد/

فاطمه وطن دوست
شنبه 19 بهمن 1387, 08:36 صبح
یعنی حتی اگر دو تا فایل ریسورس آماده (قبلا یه فایل بوده که به عنوان ریسورس تو دل برنامه قرار دادند)

داشته باشیم و بعد یه پروژه ی جدید ایجاد کنیم و بعد از طریق منوی


Add-Ins/Visual Basic 6 Resource Editor,...


میشه دو تا ریسورس رو ترکیب کرد و استفاده کرد ؟

xxxxx_xxxxx
شنبه 19 بهمن 1387, 08:52 صبح
نه نميشه دو تا فايل res. رو همزمان داشت.
بايد فايل هاي يكيشو استخراج كنيد و بعد به اون يكي اضافه كنيد.

فاطمه وطن دوست
شنبه 19 بهمن 1387, 09:35 صبح
بايد فايل هاي يكيشو استخراج كنيد و بعد به اون يكي اضافه كنيد.


استخراج و اضافه کردن محتویات رو چطوری باید انجام داد ؟

وقتی فایل ریسورس باز میشه یه سری اطلاعات نامفهوم دیده میشه یعنی محتویات اولی رو کپی کنم بعدش به فایل دومی اضافه کنم ؟

منظورتون از استخراج و اضافه کردن اینه .

xxxxx_xxxxx
شنبه 19 بهمن 1387, 10:22 صبح
خيلي ساده هست. مشكل منه كه نمي تونم منظورمو برسونم.
فرض كنيد ما دو تا فايل resource داريم با نام هاي: Resource1.res و Resource2.res مي خوايم اين دو با هم تركيب بشن.
تركيب كردن اينها كار ماست. VB اين كارو انجام نميده (اگر هم ميده من نمي دونم چطوري)
در Resource1 دو فايل وجود دارند با آي دي 101 و 102. در Resource2 هم به همين ترتيب.
حالا مي خوايم همه اينها تو يك Resource وارد بشن با آي دي 101 و 102 و 103 و 104

مي خوايم Resource2 رو به Resource1 اضافه كنيم. براي اين كار تنها Resource2 را در برنامه وارد مي كنيم و بعد هر دو فايل آن را استخراج مي كنيم و در مسيري دلخواه ذخيره مي كنيم. با اين دستور:


Open "C:\File1.bmp" For Output As #1
Open "C:\File2.bmp" For Output As #2

Print #1, StrConv(LoadResData(101, "CUSTOM"), vbUnicode)
Print #2, StrConv(LoadResData(102, "CUSTOM"), vbUnicode)

Close #1
Close #2
اين دستورات مي تونه تو يه برنامه ديگه اي باشه. به طور موقتي و فقط به همين منظور از اينها استفاده مي كنيم تا به فايل هاي درون Resource2 دست پيدا كنيم.

به برنامه اصلي بر مي گرديم و اينجا فقط Resource1 رو به برنامه وارد مي كنيم. كه به شكل تصوير شماره 1 هست.
حالا فايل هايي كه از Resource2 استخراج كرديم و در مسير \:C ذخيره كرديم (File1.bmp و File2.bmp) را يكي يكي به اين Resource اضافه مي كنيم (با كليك بر روي http://www.freeimagehosting.net/uploads/afd1a59c9a.jpg (http://www.freeimagehosting.net/))
كه به طور خودكار با شماره هاي 103 و 104 اضافه ميشند. (تصوير شماره 2)

خب ديگه تموم شد حالا همين Resource رو به عنوان Resource اصلي ذخيره مي كنيم.
فقط براي اين كه خوانايي برنامه مون بيشتر بشه مي تونيم فايل هاي هركدوم از Resource ها رو تو يه فولدر قرار بديم. براي اين كار روي آي دي 103 دابل كليك كنيد و مقدار جلوي Type رو تغيير بديد. براي آي دي 104 هم به همين ترتيب كه نهايتاً به تصوير شماره 3 مي رسيم. و بعد هم ذخيرش مي كنيم.

موفق باشيد/

aidin-joon
شنبه 19 بهمن 1387, 14:43 عصر
باسلام ابتدا دو فرم به نام form1,Form2 نياز است . سپس كد زير را در بخش General در Form 1 تان paste كنيد.
Private Declare Function SetParent Lib "user32" ( _
ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long
Private Sub Form_Load()
SetParent Form2.hWnd, hWnd
Form2.Show
End Sub