Mr.Csharp
سه شنبه 01 مهر 1393, 19:08 عصر
سلامی مجدد به همه دوستان
دوستان من یه برنامه خواندن متن دارم که می خوام همراه با این که متن خونده میشه متن هم رنگش تغییر کنه
وقتی روی ایست کلیک می کنی تغییر رنگ متوقف بشه و با کلیک کردن ادامه متن این تغییر رنگ ادامه پیدا کنه
امکان همچین کاری وجود داره؟
اگه منبعی وجود داره لطفا معرفی کنید یا نمونه سورسی
یه تاپیکی هم دیدم اما اون باید جستجو میکردی تا تغییر رنگ میداد نمی شه اون سورس رو تغییر داد تا همچین کاری کنه ؟
اینم سورس های برنامه :
اگه امکان تغییر سورس ها وجود داره لطفا راهنمایی کنید
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
int start = 0;
int indexOfSearchText = 0;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (txtSearch.Text.Trim() != "")
{
rtb.SelectAll();
rtb.SelectionColor = Color.Black;
int startindex = 0;
if (txtSearch.Text.Length > 0)
startindex = FindMyText(txtSearch.Text.Trim(), start, rtb.Text.Length);
if (startindex >= 0)
{
rtb.SelectionColor = Color.Red;
int endindex = txtSearch.Text.Length;
rtb.Select(startindex, endindex);
start = startindex + endindex;
}
}
}
public int FindMyText(string txtToSearch, int searchStart, int searchEnd)
{
if (searchStart > 0 && searchEnd > 0 && indexOfSearchText >= 0)
{
rtb.Undo();
}
int retVal = -1;
if (searchStart >= 0 && indexOfSearchText >= 0)
{
if (searchEnd > searchStart || searchEnd == -1)
{
indexOfSearchText = rtb.Find(txtToSearch, searchStart, searchEnd, RichTextBoxFinds.None);
if (indexOfSearchText != -1)
{
retVal = indexOfSearchText;
}
}
}
return retVal;
}
private void txtSearch_TextChanged(object sender, EventArgs e)
{
start = 0;
indexOfSearchText = 0;
}
}
}
دوستان من یه برنامه خواندن متن دارم که می خوام همراه با این که متن خونده میشه متن هم رنگش تغییر کنه
وقتی روی ایست کلیک می کنی تغییر رنگ متوقف بشه و با کلیک کردن ادامه متن این تغییر رنگ ادامه پیدا کنه
امکان همچین کاری وجود داره؟
اگه منبعی وجود داره لطفا معرفی کنید یا نمونه سورسی
یه تاپیکی هم دیدم اما اون باید جستجو میکردی تا تغییر رنگ میداد نمی شه اون سورس رو تغییر داد تا همچین کاری کنه ؟
اینم سورس های برنامه :
اگه امکان تغییر سورس ها وجود داره لطفا راهنمایی کنید
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
int start = 0;
int indexOfSearchText = 0;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
if (txtSearch.Text.Trim() != "")
{
rtb.SelectAll();
rtb.SelectionColor = Color.Black;
int startindex = 0;
if (txtSearch.Text.Length > 0)
startindex = FindMyText(txtSearch.Text.Trim(), start, rtb.Text.Length);
if (startindex >= 0)
{
rtb.SelectionColor = Color.Red;
int endindex = txtSearch.Text.Length;
rtb.Select(startindex, endindex);
start = startindex + endindex;
}
}
}
public int FindMyText(string txtToSearch, int searchStart, int searchEnd)
{
if (searchStart > 0 && searchEnd > 0 && indexOfSearchText >= 0)
{
rtb.Undo();
}
int retVal = -1;
if (searchStart >= 0 && indexOfSearchText >= 0)
{
if (searchEnd > searchStart || searchEnd == -1)
{
indexOfSearchText = rtb.Find(txtToSearch, searchStart, searchEnd, RichTextBoxFinds.None);
if (indexOfSearchText != -1)
{
retVal = indexOfSearchText;
}
}
}
return retVal;
}
private void txtSearch_TextChanged(object sender, EventArgs e)
{
start = 0;
indexOfSearchText = 0;
}
}
}