View Full Version : استفاده از Zoom کامپوننت TWebBrowser
Mahmood_M
شنبه 27 بهمن 1386, 21:12 عصر
با سلام ...
من یک فایل HTML رو در یک WebBrowser نمایش میدم ، حالا میخوام اون رو در ابعاد کوچکتر نمایش بدم ، یعنی کامپوننت WebBrowser من ( مثلا ) اندازش هست : " عرض : 200 و ارتفاع : 300 " و عرض صفحه ای که توش باز شده 300 هست ، میخوام کل عرض صفحه در WebBrowser دیده بشه ...
با تشکر ...
vcldeveloper
یک شنبه 28 بهمن 1386, 17:26 عصر
با استفاده از متد ExecWB و دستورات زیر می تونید Zoom رو کنترل کنید:
OLECMDID_ZOOM
و برای IE7:
OLECMDID_OPTICAL_ZOOM
برای اطلاعات بیشتر، توضیحات MSDN درباره ExecWB (http://msdn2.microsoft.com/en-us/library/aa752117.aspx) و OLECMDID (http://msdn2.microsoft.com/en-us/library/ms691264.aspx) را مطالعه کنید.
Mahmood_M
یک شنبه 28 بهمن 1386, 22:30 عصر
با تشکر از جناب کشاورز ...
من از این دستور به صورت زیر استفاده کردم :
WebBrowser.ExecWB(OLECMDID_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER);
اما چطور باید مقدار Zoom رو مشخص کنم ، من میخوام از اندازه اصلی کوچکتر بشه ...
با اجرای کد بالا این Error نشون داده میشه :
Trying to revoke a drop target that has not been registered
با توجه به پیغام بالا از دستور زیر استفاده کردم :
WebBrowser.RegisterAsDropTarget;
اما باز هم همون Error نشون داده میشه ...
درضمن ، دستور ExecWB چند ( 3 ) نسخه داره ، از کدومش باید استفاده کنم ؟
2 نسخه دیگر این دستور 2 پارامتر اضافی دارن که توی Help دلفی در موردشون این رو نوشته بود :
pvaIn : specifies a Variant array that contains any input arguments. This value can be omitted if there are not input arguments.
pvaOut : specifies a Variant that receives the results of the command, if any. This value can be omitted if there are no results.
اما نتونستم دقیقا وظیفشون رو بفهمم !
با توجه به توضیحاتی که در MSDN اومده بود ، فهمیدم که باید مقدار Zoom رو اولی ( pvaIn ) وارد کنم و اون مقدار خروجی رو در دومی ( pvaOut ) بهم میده ، اما چطور باید از این دستور استفاده کرد ، با توجه که نوع این دو تا پارامتر از نوع OleVariant هست ...
منتظر راهنمایی دوستان هستم ... ، با تشکر ...
vcldeveloper
دوشنبه 29 بهمن 1386, 02:18 صبح
من با این Zoom کار نکردم، اما توی لیست ثابت های OLECMDID فرمان هایی هم برای بدست آوردن زوم فعلی و محدوده زوم مجاز هم وجود داره. توی MSDN در صفحه مربوط به OLECMDID و بخش مربوط به زوم، مطالبی درباره پارامترهای ورودی و خروجی مرتبط با آن نوشته، یادم هست که این مطلب رو اونجا دیدم.
esi022
دوشنبه 29 بهمن 1386, 12:45 عصر
http://www.swissdelphicenter.ch/torry/showcode.php?id=1537
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.