PDA

View Full Version : تايپ با مانيتور تاچ اسكرين



غلامرضا شریفی
پنج شنبه 06 آبان 1389, 12:34 عصر
من جهت را اندازي سيتم اطلاع رساني از كيوسك ويژه اين كار استفاده ميكنم حالا نياز دارم جهت پرسش و پاسخ از مراجعه كنندگان يك صفحه كليد طراحي كنم تا بتوانند متن را تايپ كنند اگر در يك فرم محل درج متن با دكمه هاي طراحي صفحه كليد باشد مشكلي نيست ولي اگر از اين صفحه كليد خواسته باشم در جاهاي مختلف استفاده كنم چطور فرمانها را ارسال كنم در در محل مورد نظر تايپ شود

ali_najari
پنج شنبه 06 آبان 1389, 15:13 عصر
يكي از راههايي كه داري اينه كه بياي توي فرم صفحه كليد يك متغير تعريف كني و نام فرمت رو توي اون بدي و هنگام تايپ يا كليك بر روي دكمه ها بياي يه دستور select بزاري و متن رو به فرم مقصد انتقال بدي مثلا

Public FRM as String
Public Obj as String

شرطي كه بايد هنگامي كه صفحه كلي باز ميشه ارسال كني

Form2.Frm="Form1"
Form2.Obj="Textbox1"

و هنگام خروج فرم 2 براي ارسال متن از دستور زير ميتوني استفاده كني

Select Case Frm
Case "Form1"

Select Case Obj
Case "Textbox1"
form1.textbox1.text="Test"
End select
End Select


اگر منظورم رو متوجه نشديد بگيد تا يك مثال براتون بزارم

غلامرضا شریفی
پنج شنبه 06 آبان 1389, 15:31 عصر
علي جان مطلب شما درست است ولي ميخواهم اگر نود پد هم باز شده در آن بشود تايپ كرد

ali_najari
پنج شنبه 06 آبان 1389, 16:16 عصر
خوب دوست عزيز بايد هندل نوت پد رو بدست بياري و SendKeys كني

غلامرضا شریفی
پنج شنبه 06 آبان 1389, 16:24 عصر
خوب دوست عزيز بايد هندل نوت پد رو بدست بياري و SendKeys كني

وقتي كه دكمه را روي فرم خودمون كليك ميكنيم فوكس از نوت پد خارج ميشود و sendkeys در نوت پد انجام نمي شود

Mani_rf
پنج شنبه 06 آبان 1389, 17:47 عصر
چرا از On Screen Keyboard خود ویندوز استفاده نمی کنی؟

http://barnamenevis.org/forum/attachment.php?attachmentid=59204&stc=1&d=1288277209

غلامرضا شریفی
پنج شنبه 06 آبان 1389, 19:32 عصر
جناب آقاي مدير ميشود طريقه فعال شدن On Screen Keyboard را بفرماييد

غلامرضا شریفی
پنج شنبه 06 آبان 1389, 19:54 عصر
براي ارسال به نرم افزارهاي ديگر از روش ذيل ميشود استفاده كرد ولي نميدانم به فرمهاي ديگري كه توسط نرم افزار خودم باز ميشود چطور ارسال كنم


Dim Prog_not As Integer = 0
Prog_not = Shell("notepad", AppWinStyle.NormalFocus)
AppActivate(Prog_not)
My.Computer.Keyboard.SendKeys("22222", True)
My.Computer.Keyboard.SendKeys("*", True)
My.Computer.Keyboard.SendKeys("44", True)
My.Computer.Keyboard.SendKeys("=", True)

saeid.memfis
پنج شنبه 06 آبان 1389, 21:00 عصر
با این کد اجراش کنید کیبورد رو


System.Diagnostics.Process.Start("c:\windows\system32\osk.exe)

غلامرضا شریفی
شنبه 08 آبان 1389, 09:33 صبح
آقاي saeid.memfis متشكر از لطف شما حالا مشكل من با اين روش اينه كه دكمه ها بسيار كوچك هستند و با انگشت كه جهت كيوسك استفاده شود خيلي كوچك و سخت خواهد بود و ميخواهم كنترول در اختيار خودم باشد كه با فرمانهاي صادر از اين صفحه كليد ميشود سيستم را خاموش و يا خارج از برنامه من با سيستم كار كرد

غلامرضا شریفی
شنبه 08 آبان 1389, 11:51 صبح
اين را پيدا كردم از http://www.codeproject.comيك خورده با مفاهيم من متفاوت است ميشود فقط يك دكمه ان را به ساده ترين حالات تبديل كرد متشكرم

alirezash
یک شنبه 09 آبان 1389, 11:15 صبح
دوست عزیز ممنون از اینکه توجه می کنی . اما ارور می ده . خودت یک نگاه دوباره بهش بکن

غلامرضا شریفی
یک شنبه 09 آبان 1389, 11:49 صبح
دوست عزیز ممنون از اینکه توجه می کنی . اما ارور می ده . خودت یک نگاه دوباره بهش بکن

اگر منظور نرم افزار screen_demo است دوباره تست كردم فقط با Microsoft Visual Studio2003 است
اگر ورژن بالاتر Microsoft Visual Studio را استفاده ميكنيد منويي كه باز ميشود finish را تاييد كنيد و بعد close اتومات تبديل ميشود