30/09/2018, 16:26

Tìm kiếm và chèn text trong winform C++

Em có một đoạn code như sau:

private: System::Void btnStart_Click(System::Object^  sender, System::EventArgs^  e)
{
    int index =0;
    String^ kod("CIRC");
    String^ temp=richTextBox1->Text;
    richTextBox1->Text = "";
    richTextBox1->Text = temp;
    //while (index < richTextBox1->Text->LastIndexOf(kod))
    {
        richTextBox1->Find(kod, index, richTextBox1->TextLength, RichTextBoxFinds::None);
        richTextBox1->SelectionBackColor = Color::Yellow;
        richTextBox1->Text->Insert(richTextBox1->SelectionStart,txtapp->Text);
        //index = richTextBox1->Text->IndexOf(kod, index) +1;
    }
}

Dòng này

    richTextBox1->Text->Insert(richTextBox1->SelectionStart,txtapp->Text);

là để chèn phần txtapp (text cần chèn) vào phần vừa tìm kiếm được, không báo lỗi nhưng em chạy không ra kết quả.
Ở đây trong chương trình lại tìm kiếm tất cả mà em chỉ cần đầu tiên và cuối cùng xuất hiện.
Mọi người giúp em với :((

Nguyễn Minh Dũng viết 18:34 ngày 30/09/2018

không báo lỗi nhưng em chạy không ra kết quả.

em có chắc chắn là txtapp->Text có text mà em muốn in ra không?

Thành Chu viết 18:39 ngày 30/09/2018

Có anh ạ, vì phần đó là em open file từ bên ngoài rồi mà, em cho đọc trong textbox

Nguyễn Minh Dũng viết 18:36 ngày 30/09/2018

Có anh ạ, vì phần đó là em open file từ bên ngoài rồi mà, em cho đọc trong textbox

Em có thử debug ngay ở dòng

richTextBox1->Text->Insert(richTextBox1->SelectionStart, txtapp->Text);

và kiểm tra xem giá trị của txtapp->Text tại thời điểm đó là gì không?

Thành Chu viết 18:27 ngày 30/09/2018

Em không biết kiểm tra :((

Nguyễn Minh Dũng viết 18:35 ngày 30/09/2018

Hoặc em dùng MessageBox để in cái text đó ra, hoặc em đặt Breakpoint ở vị trí đó, nhấn F9.

Thành Chu viết 18:32 ngày 30/09/2018

Em đã thử và nó có nội dung. Còn dùng F9 thì nó báo (no condition, break always (urrently 0))

Nguyễn Minh Dũng viết 18:37 ngày 30/09/2018

Em đã thử và nó có nội dung

Tức là khi em bấm nút Start thì cái messageBox in ra nội dung của txtapp->Text, và nội dung đó đúng như em mong đợi?

Nếu vậy thì em xem lại hàm richTextBox1->Text->Insert có thực sự làm việc hay không? Có phải đó là cách sử dụng hàm này không?

Thử lấy một ví dụ của hàm này, bỏ dữ liệu tĩnh vào xem nó có insert vào như đúng ý mình muốn không?

Thành Chu viết 18:38 ngày 30/09/2018

Ok rồi anh ơi, lỗi là do cách em sử dụng richTextBox1 sai. Em thay dòng đó bằng dòng:

richTextBox1->Text=richTextBox1->Text->Insert(richTextBox1->SelectionStart,txtapp->Text);

là ok.

Anh có thể trả lời giúp em phần sau của câu hỏi được không ạ? Em tìm thế kia tức là nó tìm tất cả, nhưng em cần tìm mỗi đầu vào cuối :(((

Nguyễn Minh Dũng viết 18:37 ngày 30/09/2018

Anh có thể trả lời giúp em phần sau của câu hỏi được không ạ? Em tìm thế kia tức là nó tìm tất cả, nhưng em cần tìm mỗi đầu vào cuối :(((

Dòng nào là dòng tìm kiếm? Nhưng anh không trả lời câu hỏi này ở topic này đâu. Em lập một topic khác, và hỏi câu hỏi này. Mỗi topic chỉ nên có một câu hỏi. Không chèn cả 2 câu hỏi vào 1 topic.

Thành Chu viết 18:41 ngày 30/09/2018

ok anh, em chuyên topic khác

Bài liên quan
0