سلام اساتید محترم
آیا روشی در ویژوال فاکس وجود دارد که بشود از روی فرم جاری پرینت گرفت0!؟
من نمیخواهم از Report برای اینکار استفاده کنم . و دقیقا میخواهم شمای فرم را پرینت بگیرم0
منتظرم محبت دوباره دوستان هستم 0
سلام اساتید محترم
آیا روشی در ویژوال فاکس وجود دارد که بشود از روی فرم جاری پرینت گرفت0!؟
من نمیخواهم از Report برای اینکار استفاده کنم . و دقیقا میخواهم شمای فرم را پرینت بگیرم0
منتظرم محبت دوباره دوستان هستم 0
سلام
خب شما باید اول با PrintScreen اون را به حافظه ببرید سپس آن را چاپ کنید. که این در فاکس فکر نکنم پیش بینی شده باشد!
البته ممکن است توابعی وجود داشته باشد که صفحه را به فرم چاپی تبدیل کند اما آنها هم مطمئنم منظور شما نیست.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
آقا یک جستجو کار را درست می کند
آدرس یک کلاس رو نوشته بودم که از هر کدام از اشیا روی فرم می تونید یک فایل bmp ذخیره و چاپ کنید
اگر هم پیدا نکردی تو قسمت دانلود سایت www.foxite.com هست
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
سلام علیکمنوشته شده توسط rezaTavak
آقا رضا از قضا من هم توابعی را میخواهم که از داخل برنامه بتوانم چنین کاری را انجام دهد0 اگر میشه لطفا نام اون توابع و چگونگی اجرا انرا اگر زحمت نیست توضیح بدین 0
متشکرم
سلام
http://www.xs4all.nl/~foxite/downloads/foxform.zip
این چیزی است که آقای بینیاز عزیز فرمودند.
وقتی دانلودش کردید با دستورات زیر در فاکس پرو رجیسترش کنید:
DECLARE LONG DllRegisterServer IN foxform.dll
IF DllRegisterServer() = 0
* OK
ELSE
* Not OK
ENDIF
سپس از آن استفاده کرده یک شکل صفحه نمایش را به صورت BMP ذخیره کنید.
سپس با :
APPEND GENERAL GeneralFieldName [FROM FileName]
[DATA cExpression] [LINK] [CLASS OLEClassName]
آن را به یک جدول اطلاعاتی که دارای فیلد جنرال است برده و یک گزارش از این جدول و فیلد جنرالش بسازید.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
:sad2: :sad2: :sad2: :sad2: :sad2: :sad2:آقا رضا از قضا من هم توابعی را میخواهم که از داخل برنامه بتوانم چنین کاری را انجام دهد0 اگر میشه لطفا نام اون توابع و چگونگی اجرا انرا اگر زحمت نیست توضیح بدین 0
تو این آدرس محل فایل scx2bmp هست
http://www.barnamenevis.org/vi...c&start=30
و در صفحه بعد آدرس یک سایت فرانسوی که با API این کار و کرده
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
با سلام
متشکرم از جناب استاد بی نیاز و آقا رضا تاوک بخاطر زحماتشان .
آیا ممکن است به این دو سوال نیز جواب دهید؟
1- در یک پروژه اطلاعات بانک user خود را برای امنیت بیشتر با یک تابع udf کد کرده ام حال میخواهم در هنگام استفاده از grid اطلاعات بعد از ریکد به نمایش در آیند ولی نمی دانم تابع udf ی که برای ریکد نواشتم را در کجا قرار دهم ؟
2- چگونه میتوان اطلاعات یک فیلد memo را در انتهای یک repot چاپ کرد؟
با تشکر
1-در متد load فرم قرار بدین
2- فرقی بایک فیلد کاراکتری نداره یک کنترل field بزارید رو گزارش و اسم فیلد رو بدین
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
سلامنوشته شده توسط binyaz2003
ببخشید چی در متد LOAD قرار بدهم ؟ خود تابع FUNCTION را قبول نمیکند و دستور مورد نظر را هم نمی شناسد ؟ :cry:
خوب تابع رو در متد لود فرم ایجاد کنید اگر یا int
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
سلامنوشته شده توسط rahro
خیلی ساده است!
به نظر من ابتدا تمامی توابع udf خود را در یک program ذخیره کن که با دستور
Set proc to filename بشود به ان ارجاع کرد و اگر داخل یک فرم تنها میخواهی
روش خود را اجرا کنی دستور فوق را در load تایپ کن . حال بر روی grid خود
راست کلیک کن قسمت edit را انتخاب کن و بر روی فیلد مندرج مذکور راست
کلیک کن و در قسمت properties قسمت data – controlsourse فیلد خود بین
تابع udf خود قرار بده .
:wink: موفق باشی :موفق:
سلام
لطفا بفرمائید اطلاعات کد شده را فقط می خواهید نمایش دهید یا قابل ویرایش هم باشد؟ چون خیلی با هم فرق دارد. اگر فقط برای نمایش است کار ساده است! اما برای ویرایش کار خیلی سخت میشود.
در ضمن برای نمایش یک فیلد در انتهای گزارش از summery استفاده کنید. البته برای فیلدهای عددی من کار کرده و جمع چند رکورد را می زنم.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
با عرض سلام
جناب آقا رضا تاوک
منظور من فقط مشاهده بود که با توجه به توضیحات دوستان حل شد و متشکرم :موفق:
************************************************** **************
دوستان جداولی که از طریق data environment فرم باز میشوند در کدام ناحیه کاری فعال میباشند .؟ من جداول خود را در ابتدای برنامه توسط دستور select در ناحیه های مختلف باز نموده ام حال در یک فرم به هنگام ایجاد grid یک بانک اطلاعاتی که عناوین grid مرا تشکیل میدهد باز شده است ولی در هیچ کجا ندیدم که از من سوال کند در کدام ناحیه این بانک اطلاعاتی باز شود ؟ نمی دانم توانستم سوال خود را روشن بیان کنم یا خیر . البته به هنگام اجرای برنامه با هیچ مشکلی که عنوان شود که فایل بانک اطلاعاتی من قبلا use شده باشد برخورد نکردم! ولی به هر حال دلهر این موضوع هنوز در من وجود دارد.
2- چگونه میشود اطلاعات یک list box را به یک فیلد memo منتقل کرد؟ و یا بر عکس !؟؟
متشکر میشوم که دوستان بزرگوار جواب سوالات مرا بدهند.
سلام
مانند فاکس داس نیست بلکه هر فرم خودش می تواند DataSession داشته باشد. DataSession که به اسم Default است همانی است که در داس با آن آشناییم.
اطلاعات هر سطر ListBox را بخوانید و بعد از هر سطر ;\ سپس این را به داخل فیلد بریزید. هنگامی که این فیلد را با ADDITEM اضافه کنید تمام لیست اضافه میشود.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلامنوشته شده توسط rezaTavak
میشه لطف کنید در مورد دوم بیشتر راهنمایی کنید! :cry:
در ضمن در فاکس dos برای جستجوی یک عبارت فارسی در یک فیلد میبایست یک فیلد از عبارت مورد نظر بصورت معکوس رشته مورد نظر ایجاد کنیم آیا در ویژوال این کار لازم است و ایا مثلا با درج گوشه ای از یک اسم این امکان وجود دارد که تمامی اسامی که با ان اغاز میشود را جستجو و سرچ کرد؟ ایا تابع و دستور خاصی را باید بکار برد ؟ در ضمن اگر بخواهم با درج هر حرف در یک گرید بلافاصله عبارت نزدیک به ان را نمایش دهم چکار باید بکنم ؟
:cry: :cry:
با تشکر
سلام
ببینید شما اگر یک text که در آن یکسری کاراکتر است را به لیست اضافه کنید اول آن بررسی می شود اگر به کاراکتر ;\ برسد به ردیف بعد می رود. به این کد نگاه کنید :
#DEFINE C_OPERATORS_LOC "ãÓÇæ&a mp;iacute;\;ãÎÇ&am p;aacute;Ý\;Èí&am p;Ocirc;ÊÑ ÇÒ\;ßã& amp;Ecirc;Ñ ÇÒ\;Êå&a mp;iacute;\;ÎäË&ia cute;\;ÔÇã&aac ute;\;ÏÑ\;È&iac ute;ä\;"
*"equals\;not equals\;more than\;less than\;is blank\;is NULL\;contains\;in\;between"
THIS.ADDITEM(C_OPERATORS_LOC)
THIS.VALUE = THIS.LIST[1]
برای خواندن لیست هم به تعداد listcount یک حلقه که تمام ردیفها را بخواند و در یک text قرار دهد و آخر هر ردیف هم \; قرار دهد درست کنید. مقدارها را هم از آرایه list و با توجه به listindex بخوانید.
البته بهتر است در حجم بالا از فیلد استفاده کنید تا کارتان راحت باشد.
نه لازم نیست که رشته برعکس بررسی شود خود ویندوز راست به چپ را پشتیبانی میکند.
بسته به تنظیمات شما در set دارد. مثلا SET EXACT ON اگر باشد رشته باید دقیقا همانند باشند و اگر off لازم نیست همانند باشند. همچنین set ansi. یک کار که راحت هم هست این است که از تابع AT استفاده کنید.
این بسته به برنامه نویسی شما دارد. گرید خودش همچین چیزی ندارد که سرچ انجام دهد.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
با سلام و تشکر از همه دوستان که وقت گذاشته وجواب سوالات مرا میدهند
در یک پروژه که فرم اصلی با دستورات _screeen طرح ریزی شده میخواهم در صورت کلیک بر روی دکمه close بالای صفحه اول یک فرم برای کاربر نمایش داده شده و خروج وی را تائید و بعد در صورت تائید خارج شود . چگونه اینکار را انجام دهم ؟
سلام
on shut down .....
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
متشکرم آقا رضا :موفق: خودشه
ببخشید در یک grid اگر بخواهم مکان نما در یک فیلد فقط حرکت کند و از انتقال ان به سایر فیلدها جلوگیری کنم چکار باید کرد؟
و همچنین اگر بخواهم در صورتی که کاربر کلید enter را فشار داد و یا در صورتی که کاربر روی فیلد مورد نظر کلیک کرد اتفاق خاصی رخ دهد چه باید کرد ؟
با تشکر
با سلام
در مورد سوال اول شما می تونید column مورد نظر رو غیر فعال کنید thisform.grid1.column1.enabled=.f.
در مورد سوال دوم شما راه های زیادی دارید یکی اینکه از وقایع keypress و click تکست باکس مورد نظر استفاده کنید همچنین در وقایع beforrowcolchange و after rowcolchange شما nColIndex شماره ستون جاری رو خواهید داشت
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
استاد عزیز جناب بینیاز : سلامنوشته شده توسط binyaz2003
در مورد سوال دوم منظورم باز در grid بود نه تکست باکس .
منم منظورم گرید هست
منتها شما در هر گرید اول چند ستون دارید هر ستون از دو بخش تشکیل شده یک header و textbox که مقادیر فیلد شما رو textbox نمایش میده :sunglass:
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
سلامنوشته شده توسط binyaz2003
آخه چرا وقایع keypress و click در grid کار نمیکنن :mad:
من هر کار کردم نتوانستم. من میخواهم در grid هر گاه کاربر روی هر رکورد اینتر کرد مقادیر ان رکورد به یک فرم دیگر ارسال شود اخه این کجاش سخته که فاکس اینقدر گیر میده :mad:
Recno()
وب سایت شخصی
وبلاگ آموزش ویژوال فاکس پرو - به دلیل تعطیل شدن میهن بلاگ نوشته های وبلاگ به وب سایت شخصی منتقل شدند.
سلام استادنوشته شده توسط binyaz2003
آخه با این دستور نمیشه گرید رو بست . شاید من منظورم رو درست نگفتم من میخواهم با کلید اینتر گرید من بسته و رکورد جاری به فرم مورد نظر من منتقل شود!؟؟؟
:cry:
سلام
دوست عزیز گرید یک Object است و بسته نمیشه باید اون را Hide کرد یعنی شما باید بعد از اینکه کاربر ENter را زد در گزینه KeyPress چک کنید که اگر این اتفاق افتاد یک فرم دیگر باز شود و در آن فرم اطلاعات گرفته شود. یا همین فرمی که دارید با آن کار میکنید را با Visible کردن کنترلها تغییر دهید.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام دوستان
کسی تابعی داره که بتونه دو تاریخ شمسی رو از هم تفریق یا جمع کنه؟ مهم این موضوع تشخیص سال کبیسه و خبیصه است!!
سلام
من یکسری تابع تاریخ در این بخش قرار داده ام اول تاریخ را به روز ژولیوسی تبدیل کن و بعد هم تفریق.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام : کلمه ژولیوسی رو سرچ کردم چیز زیادی عایدم نشد خودم دو نمنونه تابع دارم ولی مشکوکم که صحیح کارکنند اگر شما در دسترس دارید میشه یه ادرس سر راست بدین .نوشته شده توسط rezaTavak
قلبا" !! از زحمتتون متشکرم ؟!
سلام
http://www.barnamenevis.org/vi...c&start=10
توی این قسمت است.
تمام توابع.
با تابع
persian_jdn(lnYear, lnMonth, lnDay)
برای تبدیل تاریخ به روز ژولیوسی.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام ببخشید آقا رضا - این رو دیدم ولی با توجه به اینکه گفته بودید بازم روی این توابع کار میکنید گفتم شاید کامل تر از این هم جایی گذاشته باشید بحر حال از لطف شما سپاسگذارم :موفق:نوشته شده توسط rezaTavak
سلام
من گذاشتم اما نمی دانم چرا پاک شده!
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام بی نهایت شرمنده شما میشم اگر یکبار دیگه روی سایت بذاری یا به ادرس من ایمیل کنی rahro_ali@yahoo.comنوشته شده توسط rezaTavak
چشم باید اول اونها را آماده کنم و به صورت یک فایل در آرم.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام
در تکست باکسی که من در فرم خود گذاشتم inputmask انرا ده تا 9 گذاشتم ولی برای ورود عدد اگر اعداد بزرگتر از 1111111111 بشود در یک گزینه این پیغام به کابر ارسال میشود
namric Overflow چطور میتونم این مشکل رو حل کنم
سلام
دوست عزیز محدوده اعداد شما در چه رنجی است؟ و شما از چه نوعی استفاده کرده ای؟
به این نگاه کن:
Data and Field Types
See Also
ALTER TABLE - SQL Command | Character Data Type | CREATE TABLE - SQL Command | Currency Data Type | Date Data Type | DateTime Data Type | Double Field Type | Float Field Type | General Field Type | Logical Data Type | Memo Field Type | Numeric Data Type | Overview of the Language
All Visual FoxPro data has a type — a description of the permissible values and range and size of those values. Once you specify the type of data you are using, Visual FoxPro can efficiently store and manipulate the data.
Variables and arrays hold a subset of the available Visual FoxPro data types. Additional data types are available only for fields in a table. To add a field of a specific type to a table programmatically, specify the field type with a letter abbreviation. For more information, see the description for FieldType in CREATE TABLE - SQL.
You specify the type of data to be stored in each field of a table when you create the table. The type of data in a variable or array element is determined by the value you store in the variable or array element. The following table lists the data types in Visual FoxPro.
Visual FoxPro Data Types
Data type Description Size Range
Character Any text 1 byte per character to 254 Any characters
Currency Monetary amounts 8 bytes - 922337203685477.5807 to 922337203685477.5807
Date Chronological data consisting of month, year, and day 8 bytes When using strict date formats, {^0001-01-01}, January 1st, 1 A.D to {^9999-12-31}, December 31st, 9999 A.D.
DateTime Chronological data consisting of month, year, day, and time 8 bytes When using strict date formats, {^0001-01-01}, January 1st, 1 A.D to {^9999-12-31}, December 31st, 9999 A.D., plus 00:00:00 a.m. to 11:59:59 p.m.
Logical Boolean value of true or false 1 byte True (.T.) or False (.F.)
Numeric Integers or fractions 8 bytes in memory;
1 to 20 bytes in table - .9999999999E+19 to .9999999999E+20
Variant A variant can contain any of the Visual FoxPro data types and the null value. Once a value is stored to a variant, the variant assumes the data type of the data it contains.
Variants are designated with an e prefix in language syntax.
See data types above. See data types above.
In addition, Visual FoxPro provides data types that apply only to fields in tables.
Visual FoxPro Field Types
Field type Description Size Range
Double A double-precision floating-point number 8 bytes +/-4.94065645841247E-324 to +/-8.9884656743115E307
Float Same as Numeric 8 bytes in memory;
1 to 20 bytes in table - .9999999999E+19 to .9999999999E+20
General Reference to an OLE object 4 bytes in table Limited by available memory
Integer Integer values 4 bytes -2147483647 to 2147483647
Memo Reference to a block of data 4 bytes in table Limited by available memory
Character (Binary) Any character data you want to maintain without change across code pages 1 byte per character to 254 Any characters
Memo (Binary) Any memo field data you want to maintain without change across code pages 4 bytes in table Limited by available memory
Tip You can use the TYPE( ) function to determine the type of data stored in a variable, array element, or field.
Each data type has its own characteristics, including storage size:
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام
فکرشو میکردم باید این مشکلو داشته باشه!Integer Integer values 4 bytes -2147483647 to 2147483647
ببخشید حالا در کجا میتونم این مشکلو حل کنم ؟ منظور این خط چیه؟؟ میشه راهنمایم کنید
Tip You can use the TYPE( ) function to determine the type of data stored in a variable, array element, or field.
Each data type has its own characteristics, including storage size
سلام
از نوع currency استفاده کن.
تابع TYpe نوع داده را می گوید از چه نوعی است.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)
سلام دوست عزیز
من در پروپرتیس خاصیت strictDateEntry رو برابر با O-loose کردم مشکل حل شد آیا از نظر شما مورد قبول است ؟
سلام
نه. حتما یه موردی هست که خطا میده. به نظر من نوع داده را تغییر بدی بهتره.
____________________________
همه چیز را همگان دانند و همگان هنوز از مادر زاده نشده اند. (بزرگمهر حکیم)