PDA

View Full Version : ActiveX controls in VFP



kia1349
چهارشنبه 18 شهریور 1383, 06:53 صبح
موضوعات مربوط به activex ها و کامپوننتها را در این قسمت مطرح کنید

binyaz2003
یک شنبه 03 آبان 1383, 12:17 عصر
با سلام
آیا کنترلی هست که بشه مثل پنجره چت یاهو هم متن و هم عکس رو نشان داد و اگر هست چه جوری ؟
من می خوام همون کار رو بکنم !یعنی یک مسنجر نوشتم که می خوام emotion هاشم نشوم بدم

kia1349
دوشنبه 04 آبان 1383, 06:12 صبح
اگر از لیست باکس استفاده کنی میتونی در کنار متن هایت عکس هم نشان بدهی

binyaz2003
سه شنبه 05 آبان 1383, 10:00 صبح
اگر دو سه تا عکس انتخاب کنه چی؟
یک فکری کردم که یک کنترل اینترنت اکسپلورر بزارم و پیغام ها رو به تگهای html تبدیل کنم و صصفحه رو رفرش کنم ! چطوره؟

rezaTavak
سه شنبه 05 آبان 1383, 14:06 عصر
سلام
از کنترل RichTextFormat یا RTF استفاده کنید

javad_hosseiny
پنج شنبه 17 دی 1383, 19:52 عصر
آیا برای راست به چپ کردن ابزار rich text format و treeview کدی است ؟ با تشکر

binyaz2003
پنج شنبه 17 دی 1383, 20:44 عصر
برای richtext


ThisForm.olerTF.selAlignment=1
*right
ThisForm.olerTF.selAlignment=2
*center
ThisForm.olerTF.selAlignment=0
*left

برای treeview هم یک کد در بخش vb هست با api من امتحانش نکردم جستجو کنید پیدا می کنید :sunglass:

javad_hosseiny
شنبه 19 دی 1383, 09:56 صبح
اقای بی نیاز ممنون ولی این کد فقط برای قسمت انتخابی rich edit‌ می باشد یعنی بصورت پیش فرض فقط سطر فعال را تنظیم می کند (دقت کنید بدین صورت که کلیه اطلاعات یک فایل توسط دستور loadfile به داخل rich edit منتقل کردیم و حال می خواهیم کلیه اطلاعات نمایشی از سمت راست نمایش داده شود) با تشکر

binyaz2003
شنبه 19 دی 1383, 12:01 عصر
خوب همه رو select all کنید و بعد اون دستور رو اجرا کنید :sunglass:

rezaTavak
شنبه 19 دی 1383, 17:48 عصر
سلام



این برای راست چین کردن TreeView است و این رو توی Form.Activate گذاشتم و THIS مربوط به Form است. البته شما هر جایی دلت خواست بذار.






DECLARE long GetWindowLong IN "user32" long hwnd,long nIndex
DECLARE long SetWindowLong IN "user32" long hwnd, long nIndex, long dwNewLong
DECLARE long InvalidateRect IN "user32" long hwnd, long lpRect,long bErase
DECLARE long FindWindowEx IN "user32" long hWnd1,Long hWnd2,STRING lpsz1,string lpsz2
DECLARE long GetWindow IN "user32" long hwnd,long wCmd
#DEFINE GW_CHILD 5
#DEFINE WS_EX_LAYOUTRTL 0x400000
#DEFINE GWL_EXSTYLE (-20)


OldLong = GetWindowLong(THIS.oleTree.hwnd, GWL_EXSTYLE)
SetWindowLong(THIS.oleTree.hwnd, GWL_EXSTYLE, BITOR(OldLong,WS_EX_LAYOUTRTL))
InvalidateRect(THIS.hwnd, 0, .F.)

javad_hosseiny
شنبه 19 دی 1383, 18:37 عصر
آقای بی نیازی در رابطه با بلوک کردن همگیشان (اولا کدش را بلد نیستم) ثانیا فکر کنم در آن صورت کلا مجموعه متن بصورت بلوک شده در ابتدا نمایش داده می شود که حالت زیبایی ندارد (یعنی می خواهم راست چین طبیعی (نرمال) باشد)

با تشکر فراوان از اقا رضا کلی حال دادی چون آقای بی نیاز منو معرفی به سورس مشابه در vb کرده که اونو پیدا کردم (که البته دستشان درد نکند) ولی نتونستم از اون استفاده کنم (البته مشکل با من است که با vb کاملا غریبه هستم البته برعکس دلفی (که البته دوستان اگر در مورد دلفی سوالی داشتند بنده در خدمتشان هستم)

binyaz2003
دوشنبه 21 دی 1383, 00:33 صبح
یک سوال من تو یکی از فرم ها م از internet explorer ocx استفاده کردم اما هر چند وقت یکبار(عشقی) این پیغام رو میده

javad_hosseiny
دوشنبه 28 دی 1383, 14:01 عصر
اگر منظورتان استفاه از ole مربوط microsoft ebbrowser است که من در شرایط مختلف امتحان کردم درست جواب می دهد شما در خود فایل html دقت کنید شاید فایل style, xml و یا تصویر و چیز خاصی دارید که به هنگام اجرا در محیط فاکس باعث ایجاد اشکال می شوند

javad_hosseiny
شنبه 19 شهریور 1384, 18:45 عصر
به هنگام استفاده از Ole مربوط به treeview چه مورد sp4 و چه مورد sp2 (البته از خانواده مایکروسافت) در ویندوز های دیگر (منظور سیستم های دیگر) پیغام خطایی مبنی عدم رجیستر و عدم وجود ole مورد استفاده ، می دهد.
(در ویندوز 98 و سرویس پک 2) ولی در سیستم های سرویس پک 1 دیگر مشکلی ندارد.
سوال اینکه فایل ocx مربوط چه فایلی است؟
و دوم اینکه با قرار دادن این فایل در کنار فایل exe و یا در داخل مسیر ویندوز مشکل آن حل می شود و یا حتما در رجیستری ویندوز باید ثبت شود (یعنی به هنگام setup برنامه این فایل را علاوه بر کپی کردن در رجیستری هم ثبت کنیم)؟

binyaz2003
یک شنبه 20 شهریور 1384, 13:54 عصر
شما باید در اینستال شیلد در قسمت فایلهای مورد نیاز بر حسب ورژن کنترل درختی کنار Windows Common Comtrols تیک بزنید در ضمن اگر هلپ ویژوال استودیو رو نصب و هلپ شی رو انتخاب کنید مشخصات کامل رو به شما میده

javad_hosseiny
یک شنبه 20 شهریور 1384, 18:57 عصر
با تشکر از آقای بی نیاز
ولیکن من برای نصب برنامه از اینستال شیلد استفاده نمی کنم (از برنامه نصب خودم استفاده کردم) ولکن با استفاده از همون برنامه (اینستاشیلد) فایل مربوطه را پیدا کردم (فایلهای comctl32.ocx, mscomctl.ocx (البته هرکدام برای نسخه sp2,sp4 هستند) ) ولکن پس از قراردادن آنها در کنار خود فایل exe پس از نصب (و حتی کپی در شاخه system ویندوز) باز به هنگام فراخوانی فرم (فرمی که از treeview استفاده شده) پیغام خطا می داد.
(البته فایل comctl32.ocx در مسیر system خود ویندوز موجود بود )
و نهایتا مجبور به ثبت آن در رجیستری شدم (از طریق دستور regsvr32.exe)
حال سوال اینکه آیا امکان add کردن این فایلها به خود فایل exe می باشد و یا بدون ثبت در رجیستری این کار انجام شود ؟ (یعنی در کل بدون اجرای برنامه setup و بصورت کپی کردن این کار امکان پذیر هست؟)
(لازم به ذکر است که این ایراد تنها در ویندوز 98 می باشد)

alirezavafi
سه شنبه 01 آذر 1384, 23:10 عصر
سلام. با تشکر از مسئولان سایت

دوستان این دو سایت برای ActiveX هست که اولی مختص فاکس پرو و دومی مختص تمام زبانهاست که بعضی از کمپوننتهاش تو فاکس پرو کار میکنه حتی مثال هم داره مثل کمپوننت رایت و کارتهای کپچر برای فاکس پرو
در سایت اولی حتی ماژول OCR با سایز 140 مگ برای دانلود بود.

http://www.componentsource.com/Catalog.asp?fl=C208&sc=CS&bc=C100%7EC208&cv=&ul=en

http://www.softpedia.com/get/Programming/Components-Libraries/

اگر مشکلی داشتید بگید من سعی میکنم پیداش کنم.

alirezavafi
جمعه 11 آذر 1384, 18:38 عصر
سلام

من از microsoft form 2 text box استفاده کردم اما نمی تونم از keypress ش استفاده کنم. وقتی f3 یا کلا f های دیگه رو میزنم هیچ کدی بر نمی گردونه. من میخوام کاربر اگه کلید f3 رو زد من متوجه شوم.

چکار باید بکنم؟

rezaTavak
شنبه 12 آذر 1384, 08:39 صبح
سلام

ار رویدادهای KeyDown , KeyUp استفاده کن. KeyDown بهتره. دقت کن که keycode.value را برای کد کلید استفاده کنید.

alirezavafi
شنبه 12 آذر 1384, 11:38 صبح
آقای توکلی ممنون از اینکه راهنماییم کردید. راهنماییتون خیلی به دردم خورد و کارم رو راه انداخت

rezaTavak
شنبه 12 آذر 1384, 12:08 عصر
سلام

وظیفه است. هر چه بلد باشم در اختیار عزیزان قرار دهم.

alirezavafi
دوشنبه 14 آذر 1384, 13:57 عصر
کامپوننت Capture صدا و تصویر همراه با sample برای ویژوال فاکس پرو
http://www.viscomsoft.com/demo/videocapprodemosetup.exe

کامپوننت Scanner همراه با sample برای ویژوال فاکس پرو
http://www.viscomsoft.com:80/demo/scannerdemosetup.exe

کامپوننت عکس همراه با sample برای ویژوال فاکس پرو
http://www.qwerks.com/download/5839/DemoImageViewerCp.zip

کامپوننت ویدیو چت با پشتیبانی ویژوال فاکس پرو
http://www.viscomsoft.com/demo/videochatdemosetup.exe

برای دیدن لیست کامل کامپوننتهای با پشتیبانی فاکس پرو در سایت www.softpedia.com (http://www.softpedia.com )
foxpro را search کنید.(در قسمت programming -> Component and libraries )

alirezavafi
دوشنبه 14 آذر 1384, 14:01 عصر
کامپوننت رایت CD و DVD با sample برای VFP
http://www.viscomsoft.com/demo/databurnerdemosetup.exe


این سایت کامپوننتهایی که ساخته همه روی فاکس پرو کار میکنه و دارای sample برای vfp هست
httP://www.viscomsoft.com/

شاگرد آرام
یک شنبه 20 آذر 1384, 19:55 عصر
کامپوننت برای چرخاندن تصویر png دارید ؟

alirezavafi
یک شنبه 20 آذر 1384, 22:57 عصر
از کامپوننت image viewer استفاده کن (لینکش بالا هست). اگه جواب نداد برو تو سایت www.softpedia.com/programming (http://www.softpedia.com/programming ) قسمت component and libraries بگرد پیداش میکنی
من تو این یه کمپوننت دیده بودم که کارش همین بودم ولی یادم نیست اسمش چی بود
بیشتر این امکان تو کمپوننتهایی است که میتونی عکسو ویرایش کنی

پدرخوانده
سه شنبه 18 بهمن 1384, 12:24 عصر
مشکلی در استفاده از از فایل COMCTL32.OCX (مربوط به خود ویندوز) دارم
همانطور که می دانید این ابزار دارای امکاناتی بسیاری هست همچون TREEVIEW,PROGRESBAR,...
حال مشکلی است که پس از نصب برنامه بر روی سیستم های مختلف به هنگام شروع کار فروم های که از این ابزار استفاده کرده اند پیغام خطا OLE می دهد
البته لازم به ذکر است که این فایل توسط برنامه نصب در شاخه SYSTEM32 ویندوز نصب می شود (یعنی در حقیقت در صورت عدم وجود کپی می شود) و همچنین رجیستر.
بنده برای این که مطمئن شوم این فایل توسط سیستم نصب شده است یا خیر بصورت کدنویسی در ابتدای برنامه آبجکتی از این خانواده ایجاد می کنم اگر متغیر خروجی از نوع آبجکت بود تشخیص داده که فایل نصب است و الا توسط دستور REGSVR32 آن را رجیستر می کنم (البته پس از اطمینان نسبت به وجود فایل)
ولی وقتی از برنامه استفاده می کنم اشکال ایجاد می کنم (با این که فایل وجود دارد و رجیستر شده) و پس از دیدن متن پیغام خطا (که در فایلی LOG می شوند) متوجه شدم که اشکالی مبنی بر عدم وجود لایسنس استفاده از این OLE را می دهد (یعنی شما اجازه استفاده از این OLE را ندارید)
(البته لازم به ذکر است که قسمت های مربوطه که از این ابزار استفاده کرده اند درست کار می کنند (البته با هشدار پیغام خطایی که در فایل LOG ذخیره می شود) ولی در قسمت چک اولیه برنامه به دلیل عدم ایجاد متغیری از نوع آبجکت هشداری مبنی بر این کار می دهد (یعنی اگر آبجکت قبلا در فرم بوده باشد کار می کند ولی اگر بخواهیم به صورت کدنویسی آن را ایجاد کنیم قبول نمی کند)

binyaz2003
سه شنبه 18 بهمن 1384, 12:38 عصر
ورژن فایلی که باهاش کار کردین با اونیکه همراه ستاپ گزاشتین فرق نمیکنه؟

پدرخوانده
سه شنبه 18 بهمن 1384, 13:01 عصر
نه متفاوت نیست دقیقا همونی که در سیستم خودم با هاش دارم کار می کنم
(یعنی فایل مربوطه را از شاخه system32 ویندوز خودم در کنار برنامه ستاپ قرار دادم)
(البته به راحتی به هنگام اد کردن ole می توان تشخیص داد که این ابزار را از کدام فایل و کدام مسیر می خواند) (یعنی در کل به برابر بودن نسخه و ... فایل موردنظر اطمینان دارم)
به نظر خودم این ارور یکم زیادی آننرمال هست (چون این فایل از خانواده خود مایکروسافت می باشد و جزء ویندوز است و رجیسترش هم نرمال و ... به هرحال علی القاعده نباید چنین اشکالی بدهد)

binyaz2003
سه شنبه 18 بهمن 1384, 13:26 عصر
البته لازم به ذکر است که این فایل توسط برنامه نصب در شاخه SYSTEM32 ویندوز نصب می شود (یعنی در حقیقت در صورت عدم وجود کپی می شود) و همچنین رجیستر
پس کاری کنید که حتما کپی بشه

پدرخوانده
سه شنبه 18 بهمن 1384, 13:31 عصر
جهت اطمینان از تفاوت , این کار را هم کرده ام (یعنی سوای برنامه setup) خودم دستی آن را در مسیر موردنظر کپی کردم و مجددا رجیستر و .... ولی همچنان مشکل وجود دارد

binyaz2003
سه شنبه 18 بهمن 1384, 13:44 عصر
OLE error code 0x80040112 Appropriate license not found
http://www.universalthread.com/wconnect/wc.dll?2,84,14,7634

پدرخوانده
جمعه 21 بهمن 1384, 13:05 عصر
با تشکر از راهنمایی و پیگیرتون

mostafa_zamani
پنج شنبه 18 شهریور 1389, 11:42 صبح
با سلام و با آرزوی قبولی طاعات و عبادات و تبریک عید سعید فطر
و با تشکر و سپاس فراوان از مدیران و دوستان باتجربه ای که لطف می نمایند و علم و تجربه خود را در اختیار سایرین قرار می دهند .

چگونه می توان به کاربرد پارامترهای یک متود در یک شی OLE پی برد ؟
مانند :
o.Nodes.Add(o.SelectedItem.Key, 4, THISFORM.NewKey(), TXT_LOC,0)

هرچند که در مثال تا حدود زیادی مشخص است ولی پارامتر عددی 4 واضح نیست ؟