PDA

View Full Version : یک مشکل درباره ام-دی-آی



razavian
یک شنبه 20 آذر 1384, 13:09 عصر
سلام
به نظر شما چرا تابع
CMainFrame::GetActiveDocument()
همیشه
NULL
را برمی گرداند؟
با تشکر

razavian
یک شنبه 20 آذر 1384, 16:01 عصر
من الآن متوجه شدم این تابع در برنامه های
SDI
کار می کند ولی من به اشاره گر سند جاری در یک برنامه
MDI
احتیاج دارم

sh_roohani
یک شنبه 20 آذر 1384, 17:25 عصر
سلام،
تابع CFrameWnd::GetActiveView رو در MSDN ببینید. اونجا نوشته چطور View فعال رو به دست بیارید (در MDI) و از روی View هم که می تونید با GetDocument اشاره گری به Document جاری بگیرید.

Blaster
دوشنبه 21 آذر 1384, 15:53 عصر
در پنجره MDI برای به دست اوردن سند فعال می تونی از تابع GetActiveFrame و یا MDIGetActive که هر دو از توابع پنجره اصلی هستند استفاده کنی ! و بقیه کار هم همون طوری که جناب sh_roohani اشاره کردن!

razavian
دوشنبه 21 آذر 1384, 17:12 عصر
از همتون خیلی خیلی متشکرم. این مفیدترین استفاده من از اینترنت بود.
نتیجه این شد که اول باید به وسیله تابع
GetActiveFrame
یک اشارگر به پنجره فعال بگیریم بعد از توابع
GetActiveView
,
GetActiveDocument
که عضو پنجره فعال هستند استفاده کنیم.
باز هم متشکرم.