Từ 1 tới 10 trên tổng số 10 kết quả

Đề tài: Cut, Paste richTextBox ở từng tab trong winform

  1. #1
    Ngày gia nhập
    08 2012
    Bài viết
    11

    Mặc định Cut, Paste richTextBox ở từng tab trong winform

    Mấy bác giúp đỡ em với, em có 1 cái form1 trong đó có các button như (cut, paste, copy, undo, redo) và có controltab1 tự động load formtab có cái richTextBox trong từng TabPage, vậy làm sao để các button cut, copy hoạt động mấy bác!! Có hình đính kèm! Thanks mấy bác nhìu.
    Attached Thumbnails Attached Thumbnails 2.png  

  2. #2
    Ngày gia nhập
    09 2011
    Bài viết
    129

    Trích dẫn Nguyên bản được gửi bởi tranquang_hq Xem bài viết
    Mấy bác giúp đỡ em với, em có 1 cái form1 trong đó có các button như (cut, paste, copy, undo, redo) và có controltab1 tự động load formtab có cái richTextBox trong từng TabPage, vậy làm sao để các button cut, copy hoạt động mấy bác!! Có hình đính kèm! Thanks mấy bác nhìu.
    mình có cách này trong mỗi button cut paste copy...bạn tạo 1 sự kiện tương ứng rùi chép các hàm này vào rùi thử nhé
    [DllImport("user32.dll")]
    static extern bool PostMessage(IntPtr hWnd, uint Msg, int wParam, int lParam);
    + cut
    uint WM_CUT = 0x0300;
    PostMessage(richTextBox1.Handle, WM_CUT, 0, 0);
    + copy
    uint WM_COPY = 0x0301;
    PostMessage(richTextBox1.Handle, WM_COPY, 0, 0);
    + paste
    uint WM_PASTE = 0x0302;
    PostMessage(richTextBox1.Handle, WM_PASTE, 0, 0);
    + clear
    WM_CLEAR = 0x0303;
    PostMessage(richTextBox1.Handle, WM_CLEAR, 0, 0);
    +undo
    WM_UNDO = 0x0304
    PostMessage(richTextBox1.Handle, WM_UNDO, 0, 0);

    ps: bạn nhớ thay richTextBox1 bằng rich của bạn là dc.
    có thể có cách khác dễ dàng hơn bạn thử tìm hiểu xem. nếu là delphi thì nó có sẵn tool luôn chỉ việc dùng

    Cách 2 đơn giản dễ hiểu hơn nhưng có thể có lúc sai xót đó là sendkey.
    ví dụ trong sự kiện copy bạn viết câu lệnh sendkey("^c") còn với paste là ^v .... bạn thử tìm hiểu xem
    Đã được chỉnh sửa lần cuối bởi tientrungkaka : 31-01-2013 lúc 02:14 PM.

  3. #3
    Ngày gia nhập
    10 2009
    Nơi ở
    gầm cầu
    Bài viết
    156

    chưa hiểu ý người hỏi lắm . có thể là khi ấn nút copy thì toàn bộ nội dung trong RichtextBox đang Focus sẽ dc copy chăng ? Nhưng biết copy text trong Richtextbox nào đây vì Tab nào cũng có RichTextbox mà ?
    ah như thế chúng ta cần có 1 biến toàn cục cho biết Richtextbox nào đang dc làm việc . hãy cho sự kiện Enter của tất cả các Richtextbox cùng trỏ đến 1 hàm duy nhất :richTextBox_Enter

    Visual C# Code:
    1.           private RichTextBox currentRichText;
    2.           private void richTextBox_Enter(object sender, EventArgs e)
    3.          {
    4.             currentRichText = (RichTextBox)sender;
    5.          }

    bây giờ là sự kiện click vào nút coppy

    Visual C# Code:
    1.          private void coppybtn_Click(object sender, EventArgs e)
    2.         {
    3.             if (currentRichText!=null)
    4.             {
    5.                   Clipboard.SetText(currentRichText.Text);
    6.             }
    7.         }

    tiếp theo là sự kiện click vào nút paste

    Visual C# Code:
    1.          private void pastebtn_Click(object sender, EventArgs e)
    2.         {
    3.             if (currentRichText!=null)
    4.             {
    5.                  currentRichText.Text = Clipboard.GetText();
    6.                  // hoặc currentRichText.AppendText(Clipboard.GetText());
    7.                  // tức là ghi nối vào đoạn text đang có sẵn
    8.                  // tùy nhu cầu
    9.             }
    10.         }

    nút Cut
    Visual C# Code:
    1.            private void CutBtn_Click(object sender, EventArgs e)
    2.            {
    3.             if (currentRichText != null)
    4.             {
    5.                 Clipboard.SetText(currentRichText.Text);
    6.                 currentRichText.Text = "";
    7.             }
    8.           }

    nút Undo

    Visual C# Code:
    1.          private void UndoBtn_Click(object sender, EventArgs e)
    2.         {
    3.             if (currentRichText != null)
    4.             {
    5.                 currentRichText.Undo();
    6.             }
    7.         }

  4. #4
    Ngày gia nhập
    08 2012
    Bài viết
    11

    Ý mình là có nhìu tab, khi mình select tab nào thì mình sẽ điều khiển được richTextBox trong tab đó.
    VD: Khi mình đang ở tab1 thì mình bôi đen 1 đoạn text rồi cut, đoạn text đó bị mất. ~> qua tab2 mình chọn con nháy rồi paste thì đoạn text đó lại hiện ra ở richTextBox trong tab2. , thanks mấy bác đã góp ý

  5. #5
    Ngày gia nhập
    10 2009
    Nơi ở
    gầm cầu
    Bài viết
    156

    Trích dẫn Nguyên bản được gửi bởi tranquang_hq Xem bài viết
    Ý mình là có nhìu tab, khi mình select tab nào thì mình sẽ điều khiển được richTextBox trong tab đó.
    VD: Khi mình đang ở tab1 thì mình bôi đen 1 đoạn text rồi cut, đoạn text đó bị mất. ~> qua tab2 mình chọn con nháy rồi paste thì đoạn text đó lại hiện ra ở richTextBox trong tab2. , thanks mấy bác đã góp ý
    tự tay ấn Ctrl + C rồi Ctrl + V thì ko muốn . muốn phải rê chuột đến button Coppy để coppy
    sở thích của giới trẻ thật phức tạp

  6. #6
    Ngày gia nhập
    08 2012
    Bài viết
    11

    Mặc định Cut, Paste richTextBox ở từng tab trong winform

    Trích dẫn Nguyên bản được gửi bởi doveandrose Xem bài viết
    tự tay ấn Ctrl + C rồi Ctrl + V thì ko muốn . muốn phải rê chuột đến button Coppy để coppy
    sở thích của giới trẻ thật phức tạp
    Hi, không phải bác, do còn 1 vài vấn đề nữa nên mới phải làm cái click button đấy, mong bác giúp đỡ

  7. #7
    Ngày gia nhập
    09 2011
    Bài viết
    129

    Trích dẫn Nguyên bản được gửi bởi doveandrose Xem bài viết
    tự tay ấn Ctrl + C rồi Ctrl + V thì ko muốn . muốn phải rê chuột đến button Coppy để coppy
    sở thích của giới trẻ thật phức tạp
    chak muốn làm theo kiểu notepad hay các trình đọc văn bản khác ý, luôn có các button copy , cut...nhưng thực tế mấy ai đưa chuột vô mà click đâu

  8. #8
    Ngày gia nhập
    09 2011
    Bài viết
    129

    Trích dẫn Nguyên bản được gửi bởi tranquang_hq Xem bài viết
    Hi, không phải bác, do còn 1 vài vấn đề nữa nên mới phải làm cái click button đấy, mong bác giúp đỡ
    thì mấy bài viết trên hướng dẫn tỉ mỉ thế bác dựa vô là viết dc thui còn mong j nữa bác ...hướng dẫn chủ yếu là giải quyể phần cốt lõi cứ dựa vô biến đổi chút là ok thôi. ko lẽ code đúng y như mong muốn sao :(

  9. #9
    Ngày gia nhập
    10 2009
    Nơi ở
    gầm cầu
    Bài viết
    156

    Trích dẫn Nguyên bản được gửi bởi tranquang_hq Xem bài viết
    Hi, không phải bác, do còn 1 vài vấn đề nữa nên mới phải làm cái click button đấy, mong bác giúp đỡ
    ah vấn đề gì thế ? có thể nói dc ko

  10. #10
    Ngày gia nhập
    08 2012
    Bài viết
    11

    Ah bác ơi, cái TabPage em load từ formTabpage nên cái gọi sự kiện Enter cho tất cả richTextBox làm sao bác, em tự tìm hỉu c# nên có cái hỉu cái không, mong mấy bác thông cảm

Các đề tài tương tự

  1. ADO.NET Paste dữ liệu lên nhiều cells trong GridView của devexpess
    Gửi bởi DP_RAP trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 0
    Bài viết cuối: 18-11-2013, 10:06 AM
  2. ADO.NET Copy/Paste vào Richtextbox, Làm sao để paste liên tục nối liền các lần paste vào với nhau?
    Gửi bởi MrDuy trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 20-08-2013, 06:48 PM
  3. Copy, paste trong ListView
    Gửi bởi tuanvi261 trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 0
    Bài viết cuối: 23-11-2012, 12:43 PM
  4. Load file PDF vào Richtextbox trên Winform như thế nào ?
    Gửi bởi cogang trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 22-10-2011, 04:18 PM
  5. AptechKit - Cho phép copy/paste trong khi dùng CD Aptech
    Gửi bởi hieubm trong diễn đàn Sản phẩm phần mềm của bạn
    Trả lời: 20
    Bài viết cuối: 12-12-2008, 11:13 PM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn