مسائل مربوط به رشته ها در ویژوال بیسیک

mohamadrezamm

New Member
the_king جان خیلی ممنون از جوابتون
ببینید من این کا رو الان انجام دادم ولی حروف چسبان نیستند الان داخل تکست 2 این جور می نویسه م ح م د ولی من این جور می خواهم ﻣ ﺤ ﻤ ﺪ یعنی همون جوری که روی فرم هک شده
ترو خدا جواب منو کامل بدید تا من اینقدر گیج تر نشم
بایزم خیلی ممنون
 

the_king

مدیرکل انجمن
برنامه ای با استفاده از TextBox ای که در Microsoft Forms 2.0 وجود دارد تهیه گردید. این برنامه متن موجود در TextBox1
را تجزیه تحلیل کرده و بصورت حروف مجزا در TextBox2 نمایش می دهد.

Preview.gif


برای این منظور یک جدول کوچک از تمامی حالات حروف فارسی تهیه شده است مثلا :
کد:
[B][SIZE="4"]Isolated ( ی )
Final ( ﯽ )
Medial ( ﯿ )
Initial ( ﯾ )
Preferred ( ى  )
[/SIZE][/B]

کد کامل برنامه به همراه فایل اجرایی exe ضمیمه این پست می باشد.
 

پیوست ها

  • Sample 2.zip
    9.5 کیلوبایت · بازدیدها: 10
  • Like
Reactions: MDP

the_king

مدیرکل انجمن
برنامه کامل تر شد :

Preview 2.gif


یک کلاس ClipboardW به برنامه اضافه کردم که برای کپی گرفتن محتویات TextBox2 بصورت Unicode
مناسب است. البته این کلاس توانایی دریافت متن از Clipboard را هم دارد ولی در برنامه از این قابلیت استفاده ای نشده است.

یک دکمه برای Save کردن متن TextBox2 هم به فرم اضافه گردید که خروجی اش یک فایل txt با محتویات Unicode است.
یک کلاس Browse به برنامه اضافه گردید که برای انتخاب کردن مسیر فایل خروجی بکار می رود.

ترکیب کلیدی Ctrl + C هم روی فرم (مشخصه KeyPreview در فرم True گردید) هم طوری بکار برده شد، تا اگر کنترل فعال
در برنامه (کنترلی که Focus دارد) هر کنترلی غیر از TextBox1 باشد، متن داخل TextBox2 بطور کامل به درون Clipboard
Copy شود.

یک کدی هم اضافه گردید تا ترکیب دو حرف ل و ا (لا) به شکل به هم چسبیده تفسیر شود و نه مجزا)

کد کامل برنامه به همراه فایل اجرایی exe ضمیمه این پست می باشد.
 

پیوست ها

  • Sample 3.zip
    21.7 کیلوبایت · بازدیدها: 21
آخرین ویرایش توسط مدیر:

zhm

New Member
مشکل با عملگرها!!

سلام.یه اشکال کوچیک دارم اما هر چی تلاش کردم نفهمیدم و مجبور شدم مزاحمتون بشم.نمیفهمم اشکال کد زیر چیه!



کد:
For i = 1 To UBound(newmat) 
If (newmat(i) >= txtfrom.Text And newmat(i) < txtto.Text) Then
counter= counter + 1
End If
Next i

مشکلم اینه که:بعد از اجرای حلقه مقدار counter صفر میمونه،درحالیکه نباید بمونه(چون بعضی از درایه های newmat بین txtfromوtxtto هستن)ماتریس newmat یه ماتریس ستونیه.
ممنون از لطفتون.​
 

the_king

مدیرکل انجمن
سلام.یه اشکال کوچیک دارم اما هر چی تلاش کردم نفهمیدم و مجبور شدم مزاحمتون بشم.نمیفهمم اشکال کد زیر چیه!



کد:
For i = 1 To UBound(newmat) 
If (newmat(i) >= txtfrom.Text And newmat(i) < txtto.Text) Then
counter= counter + 1
End If
Next i

مشکلم اینه که:بعد از اجرای حلقه مقدار counter صفر میمونه،درحالیکه نباید بمونه(چون بعضی از درایه های newmat بین txtfromوtxtto هستن)ماتریس newmat یه ماتریس ستونیه.
ممنون از لطفتون.​
لطفا همیشه زبان برنامه نویسی (ویژوال بیسیک) را در عنوان گفتگو مشخص کنید.
عیب کد تان در این است که شما یک رشته string (یعنی مقدار txtform.Text) را با یک مقدار عددی (یعنی (newmat(i )
مقایسه می کنید و این مقایسه نتیجه دلخواه شما را نخواهد داشت. بجای txtform.Text و txtto.Text از (Val(txtform.Text
و (Val(txtto.Text استفاده کنید تا مقادیر رشته ای توسط تابع Val به مقدار عددی تبدیل شوند.
 
  • Like
Reactions: zhm

bahar11

New Member
با درود
ایا در بیسیک دستوری هست که تعداد تکرار یک حرف در یک رشته را بگوید.
مثلا حرف a چند بار در رشته مورد نظر تکرار شده است.
با سپاس
 

the_king

مدیرکل انجمن
با درود
ایا در بیسیک دستوری هست که تعداد تکرار یک حرف در یک رشته را بگوید.
مثلا حرف a چند بار در رشته مورد نظر تکرار شده است.
با سپاس

یک دستور خاص نه، ولی یک سطر برای محاسبه این مقدار کافیست.
به شکلی ساده از اختلاف طول بین رشته اصلی با طول رشته ای که کاراکتر مورد نظر در آن حذف شده است
(با تابع Replace) ، تعداد کاراکتر های حذف شده (تعداد تکرار آن حرف) حاصل می شود :

مثلا در کد زیر اگر رشته Text همان رشته مورد نظر باشد، تعداد کاراکتر های a موجود در آن در داخل Count
قرار می گیرد.
کد:
    Dim Count As Long
    Count = Len(Text) - Len(Replace(Text, "a", ""))
 

ali_tavanaie

Well-Known Member
سلام بر رفقای برنامه نویس
من میخوام یک جدول اعداد مثل excell داشته باشم که در قسمت بالا و چپ جایی برای اعداد غیر قابل تغییر داشته باشه ، بعد تعداد سطر و ستون هاش بر اساس فیلد های ورودی قابل تغییر باشه ، اعداد وسط جدول هم توسط کاربر قابل تغییر باشه ، اون اعداد غیر قابل تغییر هم مقدارشون رو بر اساس تعداد سطر و ستون اتوماتیک بدست بیارن ،در پایان هم با زدن یک کلید این اعداد به همراه اعداد فیلد های دیگه با یک ترتیب خاص در یک فایل با یک فرمت خاص ذخیره بشن ،
به نظر شما این کار به راحتی انجام پذیره؟
کسی میتونه بگه از چه نوع tool ی برای ساخت این جدول استفاده کنم؟
لطفاً راهنماییم کنید
ممنون.
_______________________________________
جدول رو با datagridview ساختم ، تا اینجا همه چیز درست شده الا این چند چیز :
1-هر کار مکینم سطر های جدولم مقدار نمیگیرن و دائماَ یا خالین یا فلش دارند یا ستاره
2-من میخوام فقط کاربر بتونه عدد وارد کنه اما هر کار کردم باز هم میشه حرف وارد کرد.
 
آخرین ویرایش:

relax_cp

Member
سوال: جستجوی یک عبارت در یک متن ؟؟؟؟؟

با سلام
چگونه می توان با استفاده از کد یک کلمه یا عبارت را در یک متن جستجو کرد
و یا در یک فایل pdf .
منتظر شما هستم.
 

p30win

New Member
آغایون، معذرت میخوام که این تاپیک فسیل شده رو دوباره زنده کردم، من هیچی از برنامه نویسی نمیدونم یعنی خیلی کم حالیمه، یه برنامه خیلی ساده برای خودم داشتم مینوشتم و از صب تا حالا گرفتارشم، ازتون خواهشمندم کمکم کنید مشکلم رفع شه
برنامه ام مشکلی نداره تا زمانی که حروف فارسی بکار نمیبرم. ولی من بسیار زیاد از حروف فارسی استفاده میکنم و برای بعضی تکست باکس ها، زمانی که حرف فارسی رو تایپ میکنم حروف با کاراکترهای نامشخص نمایش داده میشوندد و بعضی تکست باکس ها هنگام کپی یک عبارت فارسی در آنها برخی از حروف فارسی رو با ؟؟؟؟ نمایش میدهند

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

ممنون میشم اگه کسی بیاد و برام سورس رو ادیت کنه و درستش کنه، تشکر
 

پیوست ها

  • programing.zip
    4.7 کیلوبایت · بازدیدها: 0
آخرین ویرایش:

جدیدترین ارسال ها

بالا