PDA

View Full Version : سوال: مشکل با حرف ی در وی بی6



arashi
چهارشنبه 28 اسفند 1387, 14:32 عصر
با عرض سلام و خسته نباشید به همه دوستان
مشکل با حرف ی در وی بی
برای مثال یک تکست باکس در فرم قرار دهید و سپس همین متن بالای سایت
جامعه برنامه نویسان فارسی زبان (http://www.barnamenevis.org/forum/index.php)
را کپی کرده و درون تکست باکسی که در فرم گذاشتیم پیست کنیم بعد می بینید که متن به صورت مشکل دار در میاد
لطفا راه حل این مشکل و دلیل این مشکل را توضیح دهید
و آیا این مشکل فقط در وی بی هست و در زبان هایی مثل دلفی این مشکل وجود دارد یا نه؟

parselearn
پنج شنبه 29 اسفند 1387, 00:05 صبح
اين مشكل از ويندوز هست
نتيجه متن كپي شده با متني كه نوشته بشه يكي نيست
شما مي تونيد اون رو بنويسيد (فكر نكنم مشكلي باشه)

اشكال ديگر مربوط به فونت هست
فونت پيشفرض MS Sans Serif كه از فارسي پشتيباني خوبي نداره
شما مي تونيد فونتهاي Arabic را انتخاب نمائيد

arashi
پنج شنبه 29 اسفند 1387, 02:41 صبح
یعنی چی از ویندوز هستش یعنی از همهی ویندوز ها هستش؟

نه از ویندوز نیست چطور وقتی توی نت پت کپی می کینمش مشکلی پیش نمیاد؟
الان اگر بخواهیم با وی بی یک نوت پد مثل یکی ویندوز بنویسم که مشکل هم نداشته باشه یعنی امکانش نیست !!!!؟

مشکل از فونت هم نیست با ونت های دیگه و تاهما هم امتحان کردم ولی درست نشده یعنی همینجوری شد باز

ماهان مقدم
پنج شنبه 29 اسفند 1387, 12:16 عصر
عزیزم فونت پیشفرض در وی بی MS Sans Serif هست این فونت درسته فارسی می نویسی باهاش ولی فونتش برای فارسی نیست عربیه. بهترین نکته اینه که فونت تکست باکس رو به Tahoma تغییر بدی توی خود توضیحات ماکروسافت معرفی کرده که این فونت به مراتب از فونت MS Sans بهتره.
مشکل ویندوز هم اگه باشه امکان داره فونت های سیستم شما True Type نباشه و بصورت کاراکترهای نا مشخص نشون بده(زیاد رو این گزینه تفکر نکن, 100% گزینه بالایی مشکلته).

arashi
جمعه 30 اسفند 1387, 09:40 صبح
دوستان عزیز بابا اینا را می دونم
من هم از فونت tahoma استفاده می کنم(تو پست شماره 3 این تایپیک هم اینو گفتم)
این کاری که گفتم امتحان کنید خودتون متوجه مشکل می شیوید
ببینید اگر خودمون تایپ کنیم هیچ مشکلی پیش نمیاد ولی اگر اون کاری که در پست یک گفتم را انجام بدین متوجه این مشکل می شوید
امتحان کردنش فکر نکنم یک دقیقه هم زمان بخواد!!!!!!لطفا امتحان کنید

arashi
شنبه 01 فروردین 1388, 00:46 صبح
کسی جوابی نداره بده؟

saeid12
یک شنبه 02 فروردین 1388, 14:21 عصر
دوست عزیز منم این جمله رو کپی پیست کردم خراب شد ولی خودم که نوشتمش درست شد.

arashi
دوشنبه 03 فروردین 1388, 10:53 صبح
بله بنده هم عرض کردم که اینجوری مشکلی نداره مشکل همینه دیگه
یعنی اینجا هیچ کس چیزی نمی دونه !؟ پس چی الکی میگین مرجع برنامه نویسان

Babak.Hassanpour
دوشنبه 03 فروردین 1388, 11:14 صبح
هیچ مشکلی وجود ندارد بحث را بیخود ادامه ندهید
ممکنه ایراد از تنظیمات ویندوز یا محیط ویژوال باشد
یه چند تا عکس از تنظیمات سیستم خودم گذاشتم تا ببینید

arashi
دوشنبه 03 فروردین 1388, 11:25 صبح
ممنون دوست عزیز
تنظیمات منم دقیقا همین طوره
شما کاری که من گفتم را انجم بدین می بینید که همون مشکل وجود داره
همون متنی را که گفتم کپی کنید توی یک تکست توی وی بی متوجه می شوید
همان طور که دوست عزیز دیگه مون هم این مشکلو دارن
بعد یک سوال فنی ! اون عکس اخری چه ربطی داشت!؟ اون تب که اسمش مشخصه !اون ماله محیط کد نویسی هستش دوست عزیز

arashi
دوشنبه 03 فروردین 1388, 11:30 صبح
اصلا کسی می تونه ی بنویسه داخل وی بی؟ ی ها نه ي(یعنی بدون نقطه)کسی اگر می تونه عکس بگیره و توضیح بده!
وقتی ی را می نویسم یا از جایی کپی کنیم یا به صورت مشکل دارو وارد میشه یا به صورت ي وارد میشه دلیلش چیه؟راهی برای این مشکل وجود داره؟

Babak.Hassanpour
دوشنبه 03 فروردین 1388, 11:54 صبح
عزیز دل برادر شما یه جوری گفتی مشکل دار میشه ما فکر کردیم حروف از هم جدا میشن یا کلا در هم نشون میده.
خب از اول می گفتی ی بدون دو نقطه می خوام دیگه !!!
راهش اینه که از فونت Tornado Tahoma استفاده کنی
بفرما :
http://barnamenevis.org/forum/attachment.php?attachmentid=4688&d=1156002827

arashi
دوشنبه 03 فروردین 1388, 21:28 عصر
بله دوست عزیز مشکل داره و شما درست فکر کردید! اون کاری که گفتم را انجام بدین می بینید که مشکل داره
به این صورت نمایش میده
http://tinypic.info/files/c624q50o0qx0nq0z65zi.jpg
بعد در مورد ی بدون نقطه این یک مشکل دیگه است
بعد فقط راهش استفاده از این فونته؟این فونت را که بنظر میاد ویندوز نداره نه؟(اگر اینطوره که جالب نیست)
هی راه بهتری وجود نداره برای ی بدون نقطه؟

Babak.Hassanpour
سه شنبه 04 فروردین 1388, 10:31 صبح
اگه به عکسی که ارسال کردم دقت کنید می بینید که بنده اون مشکلی که شما می فرمایید رو ندارم.مشکل ی با دونقطه هم با استفاده از فونت مناسب حل میشه .پس ایراد از نسخه ویژوال استودیو یا ویندوز شماست.نسخه های دیگر رو امتحان کنید و بحث رو خاتمه بدید.
از مدیران محترم تقاضای قفل شدن تاپیک رو دارم
ممنون.

arashi
سه شنبه 04 فروردین 1388, 11:10 صبح
بالاخره خودم متوجه مشکل شدم :قلب:
مشکل از مرورگر فایرفاکس هست اینگار! همین متن با اینترنت اکسپلور کپی کردم مشکل نداشت
البته در اصل مشکل نباید از مرورگر باشه چون وقتی همین متنی(که با مرورگر فایر فاکس) را توی نت پد کپی می کنم مشکلی نداره ولی وقتی توی برنامه هایی که با ویژوال بیسیک نوشته شده باشن کپی کنم همان طور که در عکسی که گذاشتم دیدین با مشکله
حالا دلیل این مشکل چیه؟

arashi
سه شنبه 04 فروردین 1388, 11:18 صبح
درضمن اون فونتی هم که برای ی بدون نقطه بود را اگر ممکنه بگذارید.و ایا هیچ فونتی در خود ویندوز وجود نداره که این مشکلو نداشته باشه؟من موندم چرا همین فونت تاهما و چند تای دیگه وقتی توی نت پد می نویسم بدون نقطه هست ولی وقتی همون فونت را در وی بی کار ببریم با نقطه نشان میده میشه منو روشن کنید !؟

Babak.Hassanpour
سه شنبه 04 فروردین 1388, 11:35 صبح
اگه دقت کنید لینک دانلود فونت رو گزاشتم.چند تا پست بالاتر.

arashi
سه شنبه 04 فروردین 1388, 12:52 عصر
بله ممنون
این فونت درسته که ی بدون نقطه هستش ولی اینگار مشکل من چیز دیگه ای هستش!
بینید من می خوام تکستی داشته باشم که بتونم توش هر متنی را وارد کنم مثل برنامه های دیگه(مثلا همین نوت پد)عکس زیر را ببینید
http://tinypic.info/files/gbnhscshsbosop9ux0ws.jpg
می بینید که امکان نوشتن هر دو ی وجود داره یعنی با نقطه و بدون نقطه
حالا یکی به من بگه چرا در ویژوال بیسیک نمیشه ؟؟؟؟؟؟؟؟و ایا راه حلی وجو داره یا نه؟

Babak.Hassanpour
سه شنبه 04 فروردین 1388, 13:57 عصر
آخه وی بی به صورت پیش فرض از یونیکد پشتیبانی نمی کنه

arashi
سه شنبه 04 فروردین 1388, 14:45 عصر
یعنی الان فقط مشکل از اینه که از یونیکد پشتیبانی نمی کنه؟بعد چجوری میشه کاری کرد که از یونی کد پیروی کنه
الان را حل این کاری که گفتم چیه؟؟؟

arashi
چهارشنبه 05 فروردین 1388, 12:29 عصر
دوستان منتظر جواب هستیم

saeid12
چهارشنبه 05 فروردین 1388, 13:24 عصر
اصلا کش دادن این بحث فایده ای نداره

arashi
چهارشنبه 05 فروردین 1388, 14:11 عصر
کش دادن چیه !!!؟ بابا یک مشکله و از دوستان سوال کردم تا ببینم کسی راه حلی بلده اینجا یا نه

Babak.Hassanpour
چهارشنبه 05 فروردین 1388, 14:17 عصر
کش دادن چیه !!!؟ بابا یک مشکله و از دوستان سوال کردم تا ببینم کسی راه حلی بلده اینجا یا نه

یک بار برای همیشه

Unicode Controls and Classes for Visual Basic 6

http://www.hexagora.com/en_dw_unictrl.asp

arashi
چهارشنبه 05 فروردین 1388, 14:36 عصر
ممنون اقا بابک
میشه یک کم بیشتر توضیح بدین در مورد این

Babak.Hassanpour
چهارشنبه 05 فروردین 1388, 14:52 عصر
ببین یه همچین چیزی می خواهی شما؟

arashi
چهارشنبه 05 فروردین 1388, 17:47 عصر
بابک جان این چیه؟ تو این که فقط ي دو نقطه وارد میشه
من می خوام تکستی باشه مثل برنامه های دیگه که هر دو ی را بشه وارد کرد

Mbt925
چهارشنبه 05 فروردین 1388, 18:28 عصر
ی --> Chr(236)

ي --> Chr(237)

Babak.Hassanpour
چهارشنبه 05 فروردین 1388, 19:10 عصر
بابک جان این چیه؟ تو این که فقط ي دو نقطه وارد میشه
من می خوام تکستی باشه مثل برنامه های دیگه که هر دو ی را بشه وارد کرد


یونیکد ساپورته عزیز جان تست کن متوجه می شی

arashi
جمعه 07 فروردین 1388, 21:12 عصر
ی --> Chr(236)

ي --> Chr(237)



خیلی ممنون به چیز جالبی اشاره کردین
ولی چطور میشه کاری کرد در یک تکست ار هردوش بشه استفاده کرد؟
یعنی اگر متن زیر را وارد کردیم به همین صورت وارد بشه(مثل برنامه های دیگه)
وی بي

Mbt925
شنبه 08 فروردین 1388, 14:39 عصر
برای تفکیک این دو "ی" از هم روش زیر جواب میده. البته فقط برای نوشتنشون.
یکی با کلید D و دیگری با کلیدترکیبی Shift+X

ولی برای پشتیبانی کامل از یونیکد باید یه ویرایشگر سفارشی بنویسید.





Dim Shft As Boolean
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If Shift = 1 Then
Shft = True
Else
Shft = False
End If
End Sub
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 237 And Shft Then
KeyAscii = 236
End If
End Sub

arashi
شنبه 08 فروردین 1388, 15:42 عصر
خیلی ممنون
پس مشکل فقط از اینکه وی بی از یونکود پشتیبانی نمیکنه هستش؟

نوشتن یک ویرایشگر که از یونیکد پشتیبانی کنه زمان بره و کار مشکلیه ؟
سورسی چیزی وجود نداره در این مورد؟

arashi
شنبه 08 فروردین 1388, 15:48 عصر
این روشی که گفتین یک مشکل بزرگ داره که ی را نمی تونه به صورت چسبان بنویسه مثلا کلمه این را به صورت اىن می نویسه

Mbt925
شنبه 08 فروردین 1388, 16:15 عصر
برای همین موارده که باید ویرایشگر نوشته بشه دیگه.

بله، کار پر دردسریه.

Mbt925
شنبه 08 فروردین 1388, 16:32 عصر
البته یه راه ساده برای شما اینه که از لیست Library ها گزینه
"Microsoft Forms 2.0 Object Library" رو علامت دار کنید.

این مجموعه شامل کنترل هاییه که همه از یونیکد پشتیبانی می کنن.

arashi
یک شنبه 09 فروردین 1388, 14:57 عصر
البته یه راه ساده برای شما اینه که از لیست Library ها گزینه
"Microsoft Forms 2.0 Object Library" رو علامت دار کنید.

این مجموعه شامل کنترل هاییه که همه از یونیکد پشتیبانی می کنن.

استفاده کردم ولی فارسی نمی نویسه!
فونتش هم تغییر دادم ولی باز مشکل داره با فارسی
من فقط تسکت باکسش را امتحان کردم
یک توضیح میدین؟

بعد راه دیگه ای هم اگر بلدین بگین

arashi
دوشنبه 10 فروردین 1388, 13:42 عصر
منتظر جوابم

Mbt925
دوشنبه 10 فروردین 1388, 16:29 عصر
وقتی مستقیم توی جعبه متن بنویسید، چنین اتفاقی میفته.
ولی اگه از طریق خصوصیت Text این کنترل عمل کنید، مشکلی نیست.

این اتفاق به این دلیله که وقتی مستقیم تایپ می کنید، یونیکد نوشته نمیشه و شما باید اون رو به یونیکد تبدیل کنید.

با بررسی کاراکتر ها به سادگی به تفاوت کد های اسکی و یونیکد پی می برید و مشکلتون رو حل خواهید کرد.
یکم روی این موضوع وقت بذارید.

arashi
پنج شنبه 13 فروردین 1388, 01:29 صبح
دوست عزیز لطفا بیشتر توضیح دهید
من که نتونستم در اون تکست چیزی وارد کنم و زمانی هم که از جای دیگه وارد میکنم ی باز هم به صورت دو نقطه نوشته میشه

arashi
یک شنبه 16 فروردین 1388, 03:03 صبح
منتظر جواب هستم مدیر محترم

saeid12
یک شنبه 16 فروردین 1388, 15:18 عصر
خیلی ببخشید ولی چیزی که ناشدنی هست چرا باید اینقدر الکی کش داده بشه
دیگه از vb6 که مال چنصد(بزرگنمایی) سال پیش هستش چه انتظاری دارید تازه همین فارسی که پشتیبانی میکنه خودش خیلیه که البته اونم بیشترش عربی هست نه فارسی حالا گیر دادید به یه کلمه که اونو درستش کنید :متعجب:

arashi
یک شنبه 16 فروردین 1388, 18:22 عصر
حرف شما تا اندازه ای درسته
ولی من مطمئنم یک راهی داره

saeid12
یک شنبه 16 فروردین 1388, 20:16 عصر
حرف شما تا اندازه ای درسته
تا اندازه ای نه به کل درسته

ولی من مطمئنم یک راهی داره
بله یه راهی هست:
اسباب کشی به .net

miladas
دوشنبه 17 فروردین 1388, 15:54 عصر
سلام دوست عزیز این مشکل رو منم داشتم اما یک راه خوب پیدا کردم هنگامی که تکست باکس رو ساختی روی اون یک کیلیک بزن وبه پنجره propertiesبرو و در قسمت font ،کلیک میزنی و در پنجره باز شده فونت arialرو انتخاب میکنی برو حالشو ببر

Mbt925
دوشنبه 17 فروردین 1388, 16:04 عصر
من تست کردم.
مشکلی نداشت.

فقط با تایپ مستقیم مشکل داره که راه حلش رو گفتم.

moeinjoon
دوشنبه 17 فروردین 1388, 19:48 عصر
يه راهه ديگه هم هست به اينجا يه نگاه بندازيد
http://www.barnamenevis.org/forum/showthread.php?p=700645#post700645

arashi
چهارشنبه 19 فروردین 1388, 16:04 عصر
يه راهه ديگه هم هست به اينجا يه نگاه بندازيد
http://www.barnamenevis.org/forum/showthread.php?p=700645#post700645
من که رهی چیزی ندیدم


سلام دوست عزیز این مشکل رو منم داشتم اما یک راه خوب پیدا کردم هنگامی که تکست باکس رو ساختی روی اون یک کیلیک بزن وبه پنجره propertiesبرو و در قسمت font ،کلیک میزنی و در پنجره باز شده فونت arialرو انتخاب میکنی برو حالشو ببر
امتحان کردم ولی مشکل درست نشد که
الان اینطوری که شما گفتن چه مشکلی راه حل میکنه؟
نه ی بدون نقطه را میشه از جایی توش کپی کرد و نو همونجا مستقیم نوشت


من تست کردم.
مشکلی نداشت.

فقط با تایپ مستقیم مشکل داره که راه حلش رو گفتم.

چی را شما تست کردین مشکلی نداشت ؟

Mbt925
چهارشنبه 19 فروردین 1388, 16:46 عصر
شما چی را شما تست کردین مشکلی نداشت ؟

من اون تكست باكس رو تست كردم. متن كپي شده درش بدرستي كار مي كنه. از طريق خصوصيت Text اش هم مقدار مي گيره.

رضا-امری
چهارشنبه 19 فروردین 1388, 17:11 عصر
برای تايپ حرف ي از کليدهای Shift+X هم می تونی استفاده کنی!!!
ok?

رضا-امری
چهارشنبه 19 فروردین 1388, 17:12 عصر
برای تايپ حرف ي از ترکيب کليدهای Shift+X هم می تونی استفاده کنی!!!


شد؟:لبخندساده:

رضا-امری
چهارشنبه 19 فروردین 1388, 17:14 عصر
برای تايپ حرف ی از کليدهای SHift+X استفاده کن!!!
ok?

Babak.Hassanpour
چهارشنبه 19 فروردین 1388, 17:31 عصر
دوست عزیز امیدوارم با این کد مشکلت حل بشه و دست از سر کچل این ی برداری :قهقهه:



Private Sub Text1_Change()
Text1.Text = Replace(Text1.Text, Chr$(237) & " ", ChrW(1609) & " ")
SendKeys "{END}"
End Sub




جون هرکی دوست داری این تاپیک رو دیگه بالا نیار :لبخند: ................. شوخی کردم

arashi
جمعه 21 فروردین 1388, 05:59 صبح
اقا رضا شما تایپک را از اول خوندی؟یک چی میگی ها !
اقا بابک شما هم میشه در مورد این کدی که گذاشتین یک توضیح بدین و بگین چی کار میکنه !؟

بابا من موندم اینجا یک وی بی کار حرفه ای نیست:متفکر:

Babak.Hassanpour
جمعه 21 فروردین 1388, 09:36 صبح
اقا رضا شما تایپک را از اول خوندی؟یک چی میگی ها !
اقا بابک شما هم میشه در مورد این کدی که گذاشتین یک توضیح بدین و بگین چی کار میکنه !؟

بابا من موندم اینجا یک وی بی کار حرفه ای نیست:متفکر:

ای کاش به خودتون زحمت می دادین و یه بار هم که شده کد رو اجرا میکردین . 2 خط کد ساده چه توضیحی لازم داره ؟:عصبانی++: اینجا کسی ادعای حرفه ای بودن نداره ولی شما ثابت کردی که پشتکار نداری !!!
این کد موقع تایپ توی تکست باکس ی دونقطه رو با ی بدون نقطه جایگزین میکنه .مگه همین رو نمی خواستین؟

R_BABAZADEH
پنج شنبه 21 آبان 1388, 22:27 عصر
سلام
من کلا با تبدیل اسکی به کاراکتر مشکل دارم
همه رو ؟ میزنه به نظر شما من باید چیکار کنم
انواع فونتها رو تست کردم