فرض کنید قراره زمانی که یه پنجره modal باز شه بالاتر از تمام صفحات ویندوز باشه و روی همه اونا قرار بگیره در این صورت بایستی چیکار کرد؟(در ویژوال سی )
باتشکر
Printable View
فرض کنید قراره زمانی که یه پنجره modal باز شه بالاتر از تمام صفحات ویندوز باشه و روی همه اونا قرار بگیره در این صورت بایستی چیکار کرد؟(در ویژوال سی )
باتشکر
میتونین از متد SetWindowPos دیالوگ استفاده کنین :
پارامتر اول مربوط به Z-Order هست که میتونه wndTopMost wndTop wndNoTopMost wndBottom باشه.کد:SetWindowPos(wndTopMost, 0, 0, 0, 0, SWP_NOSIZE|SWP_NOMOVE)
با سلام خدمت شما :
البته این مشکل من خوشبختانه با true کردن ویژگی system modal در مورد دیالوگی که داشتم برطرف شد اگه ممکنه روش رو واسه messagebox بگید یعنی messagebox ی که بالای تمام صفحات ویندوز قرار بگیره آیا متدی رو که گفتید برای messagebox هم صادقه ؟
دو تا سوال دیگه هم دارم که اگه لطف کنید و پاسخ بدید :
1) زمانی که یه messagebox اجرا میشه چطور میشه از طریق برنامه نویسی اون رو بست (بدون فشار دادن دکمه ok ) مثلا زمانی که یک دیالوگ داریم به راحتی از طریق دستور enddialog قابل بستن هست در مورد یک messagebox این کار چطور ممکنه ؟
2)از وقتی که TABCONTROL رو به برنامه اصلیم اضافه کردم در ابتدای اجرای برنامه با یک ERROR مواجه میشم که بعد از زدن دکمه Retry و یا Ignor به این خط از برنامه در فایل dlgdata.cpp راهنمایی میشم و بعدش برنامه کامل و بی نقص اجرا میشه . . . ممکنه بگید ایراد از کجاست ؟)ویژوال سی 2005)
کد:
ASSERT(!pDX->m_bSaveAndValidate);
pDX->PrepareCtrl(nIDC);
HWND hWndCtrl;
pDX->m_pDlgWnd->GetDlgItem(nIDC, &hWndCtrl);
با تشکر
برای MessageBox میتونین از فلگ MB_SYSTEMMODAL یا MB_TOPMOST استفاده کنین.
برای بستن MessageBox میشه با گرفتن Handle پنجره ش و فرستادن WM_CLOSE با تابع SendMessage به اون پنجره اون رو بست. این حالت مثل اینه که شما روی اون آیکن ضربدر در پنجره MessageBox کلیک کنی..
ظاهرا Error بخاطر اون ASSERT هست که مقدار pDX->m_bSaveAndValidate برابر false باید باشه ولی نیست و برای همین هم ASSERT Failed میشه. اما چرا اینطوری میشه نمیدونم یکبار حذف کردید و دوباره اضافه کنین ببینین مشکل حل میشه یا نه؟
در مورد مشکل سوم باید بگم هرکاری کردم متاسفانه این پیغام assert برطرف نشد که نشد
ممکنه بگید assert چیه و ممکنه من چه اشتباهی در برنامه نویسی کردم که با این پیغام مواجه میشم ؟؟
ممنون میشم بی اطلاعم نذارید
راستی در مد دیباگ چطور میشه فهمید این مشکل از کجا ناشی میشه ؟
در مورد ASSERT
خط به خط Debug کنین.مقداری که توی ASSERT قرار میگیره باید ارزشش true باشه وگرنه Assertion Failed میشه.کد:http://en.wikipedia.org/wiki/Assertion_%28computing%29
Bonjormi
با سلام خدمت شما.
من يك برنامه تپل با سي پلاس پلاس مي خواهم.
آيا كسي است كه مارو كمك كنه؟
اين يك روژه نيست!!!!!!!!!
من واسيه سايتم مي خوام!!!!!!!
www.COMPROs.com
Computer Professionals
متشكرم!
بعد از دیباگ دقیقتر متوجه شدم که این ارور مربوط به تعریف متغیر tab control در برنامه میشه یه خطی شبیه به این در تابع DoDataExchange :
کد:
DDX_Control(pDX, IDC_TAB1, myTab1);
دقیقا وقتی به این خط می رسه دیالوگ abort-retry-ignor باز میشه و بعد از انتخاب ignor برنامه اجرا میشه
توضیح بیشتر :
من با استفاده از مقاله زیر tabcontrol رو ایجاد کردم :
http://www.codersource.net/mfc_ctabctrl.html
در این مقاله که در اصل برای ویژال 6 نوشته شده بود با ایجاد یک کلاس مشتق شده این کار رو انجام می ده
زمانی که با ویژال 6 کار می کردم در قسمت base class هم اسم کلاس CTabCtrl و هم MyTabCtrl (کلاس مشتق شده ) وجود داشت اما در ویژوال 2005اسم کلاس مشتق شده در combo ی base class وجود نداشت و من خودم به صورت دستی اسم رو تغییر دادم و CTabCtrl رو به MyTabCtrl تبدیل کردم و جواب گرفتم . . . امکان داره این اشکال از اونجا باشه ؟
این هم output برنامه من :
نمی دونم ممکنه بدرد بخوره یا نه؟؟؟:20:کد:
'alarm.exe': Loaded 'C:\Documents and Settings\as\My Documents\back\test1\alarm\Debug\alarm.exe', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\ntdll.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\mscoree.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\kernel32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\advapi32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\rpcrt4.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugMFC_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_c8452471\mfc80d.dll', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcr80d.dll', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\msvcrt.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\gdi32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\user32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\shlwapi.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\oleaut32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\ole32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\comdlg32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\comctl32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\shell32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcm80d.dll', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\imm32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\lpk.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\usp10.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.MFCLOC_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_3415f6d0\mfc80ENU.dll', Binary was not built with debug information.
'alarm.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.2600.2180_x-ww_a84f1ff9\comctl32.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.CRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_0de06acd\msvcr80.dll', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Culture.dll', No symbols loaded.
'alarm.exe': Unloaded 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Culture.dll'
'alarm.exe': Loaded 'C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\mscorlib\75494628f3976d47b4fbd5c52bdcca69\mscorlib.ni.dll', No symbols loaded.
'alarm.exe' (Managed): Loaded 'C:\WINDOWS\assembly\GAC_32\mscorlib\2.0.0.0__b77a5c561934e089\mscorlib.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\uxtheme.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\MSCTF.dll', No symbols loaded.
'alarm.exe' (Managed): Loaded 'c:\Documents and Settings\as\My Documents\back\test1\alarm\Debug\alarm.exe', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\mscorjit.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\diasymreader.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\rsaenh.dll', No symbols loaded.
'alarm.exe' (Managed): Loaded 'C:\WINDOWS\WinSxS\x86_Microsoft.VC80.DebugCRT_1fc8b3b9a1e18e3b_8.0.50727.42_x-ww_f75eb16c\msvcm80d.dll', Symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\assembly\NativeImages_v2.0.50727_32\System\78cc0f146018a84c8d8b5732e07576be\System.ni.dll', No symbols loaded.
'alarm.exe' (Managed): Loaded 'C:\WINDOWS\assembly\GAC_MSIL\System\2.0.0.0__b77a5c561934e089\System.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\version.dll', No symbols loaded.
'alarm.exe': Unloaded 'C:\WINDOWS\system32\version.dll'
'alarm.exe': Loaded 'C:\WINDOWS\system32\MSCTFIME.IME', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\xpsp2res.dll', Binary was not built with debug information.
'alarm.exe' (Managed): Loaded 'c:\Documents and Settings\as\My Documents\back\test1\alarm\Debug\Interop.ShamsiDLL.1.0.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\mslbui.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\Program Files\Babylon\Babylon-Pro\captlib.dll', Binary was not built with debug information.
'alarm.exe': Loaded 'C:\WINDOWS\system32\oleacc.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\msvcp60.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\clbcatq.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\comres.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\version.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system\Shamsi.dll', Binary was not built with debug information.
'alarm.exe': Loaded 'C:\WINDOWS\system32\MSVBVM60.dll', Cannot find or open a required DBG file.
'alarm.exe': Loaded 'C:\WINDOWS\system32\VBAME.DLL', Binary was not built with debug information.
'alarm.exe': Loaded 'C:\WINDOWS\system32\sxs.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\MCI32.OCX', Cannot find or open a required DBG file.
'alarm.exe': Loaded 'C:\WINDOWS\system32\winmm.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\serwvdrv.dll', No symbols loaded.
'alarm.exe': Loaded 'C:\WINDOWS\system32\umdmxfrm.dll', No symbols loaded.
Warning: skipping non-radio button in group.
Warning: skipping non-radio button in group.
Warning: skipping non-radio button in group.
Warning: skipping non-radio button in group.
Warning: skipping non-radio button in group.
'alarm.exe': Unloaded 'C:\WINDOWS\system32\MCI32.OCX'
The thread 'Win32 Thread' (0xca0) has exited with code 2 (0x2).
The thread 'Win32 Thread' (0x1d8) has exited with code 2 (0x2).
The thread 'Win32 Thread' (0x954) has exited with code 2 (0x2).
The thread 'Win32 Thread' (0x95c) has exited with code 2 (0x2).
The thread 'Win32 Thread' (0x33c) has exited with code 2 (0x2).
Detected memory leaks!
Dumping objects ->
f:\rtm\vctools\vc7libs\ship\atlmfc\src\mfc\strcore.cpp(141) : {273} normal block at 0x0049C820, 17 bytes long.
Data: < >x > EC 97 3E 78 00 00 00 00 00 00 00 00 01 00 00 00
{143} client block at 0x00499350, subtype c0, 400 bytes long.
faulted while dumping object at $00499350, 400 bytes long
{142} client block at 0x00499190, subtype c0, 384 bytes long.
faulted while dumping object at $00499190, 384 bytes long
{141} client block at 0x00498DD8, subtype c0, 888 bytes long.
faulted while dumping object at $00498DD8, 888 bytes long
{140} client block at 0x00498BC0, subtype c0, 476 bytes long.
faulted while dumping object at $00498BC0, 476 bytes long
Object dump complete.
The program '[2552] alarm.exe: Managed' has exited with code 2 (0x2).
The program '[2552] alarm.exe: Native' has exited with code 2 (0x2
)
سلام دوستان برای یادگیری برنامه c سی دی آموزشی یا کتاب هست اگر هست مشخصات بدید(اسم کتاب یا شرکت تولید کننده سی دی):10:
سلام
کتاب :مهندس عین الله جعفر نژاد قمی انتشارات علوم رایانه
سی دی از موسسه بزرگراه نرم افزارکد:www.softhighway.com