ورود

View Full Version : سوال: دستور براي paste و كپي



jooybar
دوشنبه 05 اسفند 1387, 12:00 عصر
در vfp جهت paste و copy يك رشته از چه دستوري بايد استفاده كرد ؟:ناراحت:

مثلا اگر رشته اي در يك جايي از ويندوز copy شد در vfp چگونه بايد رشته را paste كرد؟:ناراحت:

باتشكر :خجالت:

rahro
دوشنبه 05 اسفند 1387, 12:45 عصر
از این متغیر سیستمی استفاده کن:_cliptext

jooybar
یک شنبه 11 اسفند 1387, 08:19 صبح
از این متغیر سیستمی استفاده کن:_cliptext

با تشكر از شما.

براي كپي كردن رشته از چه دستوري بايد استفاده كرد ؟:خجالت:

rahro
یک شنبه 11 اسفند 1387, 10:00 صبح
منظورت رو متوجه نشدم ممکنه بیشتر خواسته خودت رو بگویی؟!
شما در هر جای ویندوز که رشته ای رو های لایت میکنی قسمت انتخابی شما در متغیر سیستمی _cliptext قرار میگیره و شما میتونی حاصل اون رو به VALUE شی خودت ارتباط بدی . و از اون استفاده کنی .

jooybar
دوشنبه 12 اسفند 1387, 08:54 صبح
معادل دستوري براي كليدهاي تركيبي ctrl+c

rahro
دوشنبه 12 اسفند 1387, 10:37 صبح
خوب همینه دیگه !! شما فرمودین:

اگر رشته اي در يك جايي از ويندوز copy شد
شما چه جوری رشته ای در هر جای ویندوز در حافظه موقت کپی میکنین؟؟!بعد از هایت لایت کردن ؛ یا ctrl+c یا راست کلیک و کپی .
خوب مقدار مربوطه تو متغیر سیستمی که عرض کردم کپی میشه حالا میتونی حاصل اون رو هر جا خواستی استفاده کنی .

amir.azimi2000
دوشنبه 12 اسفند 1387, 16:32 عصر
با سلام .
اين كه كاري نداره شما بايد مقدار متغير :_cliptext را برابر با محتواي فيلد خودت قرار دهي . به اين ترتيب محتواي فيلد به حافظي مي رود .

jooybar
چهارشنبه 14 اسفند 1387, 13:41 عصر
با سلام .
اين كه كاري نداره شما بايد مقدار متغير :_cliptext را برابر با محتواي فيلد خودت قرار دهي . به اين ترتيب محتواي فيلد به حافظي مي رود .

شما چطور اين كار رو انجام ميديد ؟؟؟!!
من وقتي مقدار به تابع فوق ميدم مقدار .f. رو برميگردونه .
ظاهرا تابع فوق بجز paste كردن رشته اي را با روش شما با مقدار رشته خود مقايسه و در صورت صحت مقدار .t. را برميگرداند.
من ميخوان يك متن رو به :_cliptext بفرستم تا بتوان در جاهاي ديگر ويندوز آن را paste كرد
كسي ميدونه از چه تابع يا دستوري بايد استفاده كرد؟:متفکر:

mehran_337
چهارشنبه 14 اسفند 1387, 15:11 عصر
در پست شماره 2 همین صفحه کاربر رهرو گفت متغیر سیستمی ، کسی نگفت تابع پس
قرار نیست چیزی رو برگردونه .
متغیر مقدار رو در خودش نگه می داره و تابع مقداری رو بر می گردونه
اگر بنویسید


?_cliptext = "hello"

عبارت .f. رو می ده . اصلا عبارت فوق غلطه

باید در فاکس اینطور بنویسید


_cliptext = "hello"

حال در هر جای ویندوز past کنید یا ctrl+v را بزنید عبارت hello درج می شود.

اینجا اگر کسی به پست شما جواب داد هدفش فقط کمک بوده و هر کس در حد توانش .
من اگه جای شما بودم حتی اگر کسی جوابی می نوشت که اشتباه هم بود بجای خندیدن و تمسخر از اینکه وقت گذاشت تشکر می کردم چه برسه که آقای عظیمی کاملا هم راهنمایی درستی کردند

موفق باشید

jooybar
چهارشنبه 21 اسفند 1387, 08:44 صبح
در پست شماره 2 همین صفحه کاربر رهرو گفت متغیر سیستمی ، کسی نگفت تابع پس
قرار نیست چیزی رو برگردونه .
متغیر مقدار رو در خودش نگه می داره و تابع مقداری رو بر می گردونه
اگر بنویسید


?_cliptext = "hello"

عبارت .f. رو می ده . اصلا عبارت فوق غلطه

باید در فاکس اینطور بنویسید


_cliptext = "hello"

حال در هر جای ویندوز past کنید یا ctrl+v را بزنید عبارت hello درج می شود.

اینجا اگر کسی به پست شما جواب داد هدفش فقط کمک بوده و هر کس در حد توانش .
من اگه جای شما بودم حتی اگر کسی جوابی می نوشت که اشتباه هم بود بجای خندیدن و تمسخر از اینکه وقت گذاشت تشکر می کردم چه برسه که آقای عظیمی کاملا هم راهنمایی درستی کردند

موفق باشید
با تشكر از amir azimi و تذكر جنابعالي هرچند من كسي رو مسخره نكردم ( آيكن مورد نظر به مفهوم تمسخر است ؟)

چنانچه cliptext="hello"? اجرا شود در واقع cliptext خروجي خواهد داشت و اين خروجي چنانچه با مقدار موجود در متغيير مورد نظر برابر باشد مقدار .t. و در غير اين صورت مقدار .f. را باز خواهد گرداند. (پس عبارت فوق نميتواند اشتباه باشد)
به نظر شما cliptext يك نوع تابع نيست ؟
ولي در حالتي كه بخواهيم cliptext را مقدار دهي كنيم روش شما صحيح است ( كه البته اشتباه من هم همين بود كه عمل مقدار دهي متغيير را اشتباه انجام ميدادم ).

mehran_337
چهارشنبه 21 اسفند 1387, 10:34 صبح
متغیر ها مکانی در حافظه هستند که به شما اجازه می دهد مقداری را بطور موقت ذخیره کنید.
تابع مجموعه ای از کدهاست که مقادیری را به عنوان پارامتر ورودی دریافت می کند و مقداری را به عنوان خروجی می دهد که ممکن است ورودی نداشته باشد . در غیر اینصورت فراخوانی تابع همراه آرگومان خواهد بود.
توابع در فاکس همگی دارای () می باشند و غیر از این در فاکس نمی بینید.
در متغیر ها باید عمل انتساب صورت گیرد یعنی نام متغیر در سمت چپ و سپس علامت مساوی و در مرحله بعد ،مقدار را در سمت راست باید قرار دهیم .
در فاکس متغیر های سیستمی مختلفی از پیش تعریف شده که با underline شروع می شوند همانند متغیر سیستمی فوق و یا _reportpreview و ... که لیست کامل این متغیرها را به ترتیب حروف الفبا می توانید در help فاکس با درج عبارت variable system در برگه serch ببینید.

موفق باشید

amir.azimi2000
چهارشنبه 21 اسفند 1387, 12:22 عصر
با سلام .
دوست عزيز Jooybar :
باور كن Cliptext_ يك متغيير سيستمي است درسته كه ميشه مثل يك تابع باهاش برخورد كرد ولي اصالاتا يك متغيير سيستمي است .
شما يك فايل Prg را در نظر بگير .. ماهياتا يك فايل برنامه است و با فرمان Do Filename اجرا ميشود ولي در عين حال ميتوان مثل يك تابع به شكل ()Filename آن را اجرا كرد .
حالا اگر قبول نداري ... هرچي تو ميگي ما تسليم .

با تشكر از Mehran_337 عزيز كه هواي ما ضعيف ها را ميگيرد .

binyaz2003
پنج شنبه 22 اسفند 1387, 23:58 عصر
Contains the contents of the Clipboard.
_CLIPTEXT = cExpression
Parameters
cExpression
Specifies the character expression to store in the Clipboard.
Remarks
You can place a character expression cExpression on the Clipboard with STORE or the = assignment operator.
Example
These examples will put long pathnames on the clipboard.
_cliptext=_vfp.ServerName
or
_cliptext=getfile()

پدرخوانده
شنبه 15 فروردین 1388, 20:12 عصر
چطور می توان به محض کپی کردن در حافظه ویندوز (در هر محیطی ) در برنامه خود (در محیط ویژوال فاکس) متوجه شد که متغیر موردنظر _CLIPTEXT پر شده و بتوانیم از آن استفاده کنیم
در حقیقت می خواهم یک برنامه همیشه در حال اجرا در داخل برنامه خود داشته باشم (مشابه برنامه مقیم در حافظه در محیط داس) که به محض اینکه کاربر چیزی را در ویندوز کپی CTRL+C زد برنامه من متوجه شده و مقدار آن را در قسمت خاصی از برنامه اضافه کنم
(می دانم که مثلا باید یک برنامه ای با کمک تایمر (که مثلا چند ثانیه یکبار چک شود) داشته باشیم و کنترل کند هر وقت متغیر موردنظر پر شده آن را فراخوانی کنم ، اما این برنامه را چگونه در کل برنامه فعال داشته باشم؟؟؟)
با تشکر از دوستان

binyaz2003
یک شنبه 16 فروردین 1388, 10:16 صبح
دوحالت هست :
شما يک فرم اصلي داريد که در اينصورت يک تايمر در آن قرار ميدهيد و چک ميکنيد (البته بهتره interval آن در حد دقيقه باشد يا نصف آن)
شما يک برنامه اصلي داريد که ميتونيد تايمر رو بصورت يک کلاس بنويسيد و يک نمونه از آن بسازيد.