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

Đề tài: Mở form khác nhau bằng contextmenu

  1. #1
    Ngày gia nhập
    12 2007
    Bài viết
    13

    Unhappy Mở form khác nhau bằng contextmenu

    Ý mình gần giống tiêu đề chỉ là mình minh hoạ kiểu textbox cho dễ nói, giả sử mình có 10 textbox bình thường để trống, khi nhận dc thông tin từ tên máy tương ứng textbox, thì textbox.text sẽ hiện dòng chữ "có thông tin (vd vậy)", rùi khi cần xử lý thông tin ở textbox đó mình click vào nó (Thực tế mình mún làm là click trên contextmenu nhưng nói vậy cho dễ hiểu) thì nó sẽ tạo và show ra form (thay đổi tuỳ theo thông tin nhận dc). Ở đây dùng form là vì khi nó nhận thông tin truyền vào thì có xử lý nữa, và cùng 1 mẫu form có thể nhìu textbox cùng show ra.

    Hướng giải quyết: Mình còn gà nên chỉ nghĩ ra vài cách
    1) khi nhận info thì tạo form đó, rùi đợi click event thui, nhưng mà làm vậy thì chỉ giải quyết theo tuần tự từng txtbx một thui, lỡ như cùng lúc có nhiều txtbx có thông tin thì khỏi đỡ, vì ko thể nào mà gán từng form cho từng txtbx để dành xử lý dc.
    2) mình tính dùng array, tính ra thì dc vì mình dùng arr để lưu vào thay txtbx, vd arr[5] (tượng trưng txtbx5) chứa form5, arr[8] = form8 vvv. Nhưng nó chỉ thik hợp trường hợp các txtbx cố định nếu nó nhìu hơn hoặc ít (và số lượng thay đổi liên tục) hơn thì làm sao để xác định chính xác số phần tử để áp dụng cách này trừ khi cho mặc định một số lượng arr lớn, nhưng vậy thì có khả năng dư thừa.
    3) mình tính dùng arr 2 chiều nhưng hình như arr 2 chiều đâu thể nào chứa 1 cái kiểu chuỗi và 1 kiểu form dc, cách này phá sản
    4) tính dùng arraylist để quy hết về obj với số lẽ để lưu thứ tự txtbx còn số chẵn lưu form vd khi click vào txtbx thì sẽ dò trong arrlist rùi tìm thấy có thì trả về form của phần tử kế nó. vd tìm txtbx5 thấy = arrlixt[3] vậy thì trả về arrlist[4]. Tuy nhiêncách này thấy hơi bị chuối

    Mình chỉ là gà thui nên ai có cao kiến gì thì xin chỉ giáo. Cám ơn trước

    p/s: vấn đề trên tính ra để áp dụng cho các row của listview nhưng mà dùng hình ảnh txtbox cho mọi người dễ hình dung

  2. #2
    Ngày gia nhập
    08 2009
    Nơi ở
    TP Cần Thơ - Lộ 91B
    Bài viết
    214

    - Khi lưu trữ mà không xác định được số lượng thì dùng List nhé
    - Bạn muốn lưu trữ thứ tự txtbx và Form thì tạo 1 object đi rồi chỉ cần lưu 1 object thôi.
    - Code minh họa nhé
    Code:
        public Class myObject {
                 public int index_txtbx;
                 public Form myForm;
    
                 pulbic myObject( ... ) { . . . }
        }
    
        //-- Dùng trong Class chính
        List<myObject> listMyObjects = new List<myObject>();
         
        //-- Lưu vào listMyObjects
        listMyObjects.Add( (new myObject( ... ) ) );
        
        //-- Lấy thông tin 
        listMyObjects[ index ] . [ property ]
    - Có đề tài nào làm ko được thì liên hệ với mình. Giá cả thỏa thuận. Sản phẩm bạn nhận được là 1 Source Code + 1 file hướng dẫn

    PHÁT TRIỂN PHẦN MỀM HỖ TRỢ CÔNG VIỆC
    ỨNG DỤNG QUẢN LÝ CHO DOANH NGHIỆP VỪA VÀ NHỎ

    (0969.867.490 - ltnghia.wins@gmail.com)

  3. #3
    Ngày gia nhập
    04 2011
    Nơi ở
    Heaven
    Bài viết
    90

    Trích dẫn Nguyên bản được gửi bởi Nerd_For_Ever Xem bài viết
    Ý mình gần giống tiêu đề chỉ là mình minh hoạ kiểu textbox cho dễ nói, giả sử mình có 10 textbox bình thường để trống, khi nhận dc thông tin từ tên máy tương ứng textbox, thì textbox.text sẽ hiện dòng chữ "có thông tin (vd vậy)", rùi khi cần xử lý thông tin ở textbox đó mình click vào nó (Thực tế mình mún làm là click trên contextmenu nhưng nói vậy cho dễ hiểu) thì nó sẽ tạo và show ra form (thay đổi tuỳ theo thông tin nhận dc). Ở đây dùng form là vì khi nó nhận thông tin truyền vào thì có xử lý nữa, và cùng 1 mẫu form có thể nhìu textbox cùng show ra.

    Hướng giải quyết: Mình còn gà nên chỉ nghĩ ra vài cách
    1) khi nhận info thì tạo form đó, rùi đợi click event thui, nhưng mà làm vậy thì chỉ giải quyết theo tuần tự từng txtbx một thui, lỡ như cùng lúc có nhiều txtbx có thông tin thì khỏi đỡ, vì ko thể nào mà gán từng form cho từng txtbx để dành xử lý dc.
    2) mình tính dùng array, tính ra thì dc vì mình dùng arr để lưu vào thay txtbx, vd arr[5] (tượng trưng txtbx5) chứa form5, arr[8] = form8 vvv. Nhưng nó chỉ thik hợp trường hợp các txtbx cố định nếu nó nhìu hơn hoặc ít (và số lượng thay đổi liên tục) hơn thì làm sao để xác định chính xác số phần tử để áp dụng cách này trừ khi cho mặc định một số lượng arr lớn, nhưng vậy thì có khả năng dư thừa.
    3) mình tính dùng arr 2 chiều nhưng hình như arr 2 chiều đâu thể nào chứa 1 cái kiểu chuỗi và 1 kiểu form dc, cách này phá sản
    4) tính dùng arraylist để quy hết về obj với số lẽ để lưu thứ tự txtbx còn số chẵn lưu form vd khi click vào txtbx thì sẽ dò trong arrlist rùi tìm thấy có thì trả về form của phần tử kế nó. vd tìm txtbx5 thấy = arrlixt[3] vậy thì trả về arrlist[4]. Tuy nhiêncách này thấy hơi bị chuối

    Mình chỉ là gà thui nên ai có cao kiến gì thì xin chỉ giáo. Cám ơn trước

    p/s: vấn đề trên tính ra để áp dụng cho các row của listview nhưng mà dùng hình ảnh txtbox cho mọi người dễ hình dung
    dùng Array List<T> giải quyết được mà bạn, khi nhận được thông tin thì bạn duyệt từng phần tử và trả về textbox đó rồi gửi đến textbox đó cái thông tin gì đó, mình nghĩ dù phát sinh thêm thì cũng có phương thức add mà, mình nhớ không lầm là vậy, bạn thử xem nhé
    I'll come back

  4. #4
    Ngày gia nhập
    12 2007
    Bài viết
    13

    @stupid_genius: như bạn nói thì đó là cách số 4 của mình đó, có điều bạn đọc ko kỹ ý mình là xử lý random chứ ko phải tuần tự.

    @latuine: cách bạn hay đó, mình quá chú trọng vào giải quyết vấn đề bên trong cùng 1 class mà quên mất có thể chia ra nhìu class để giải quyết vấn đề, sẽ là một bài học hay.

    Dù sao cũng cảm ơn 2 bạn nhìu vì đã nhiệt tình giúp đỡ

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

  1. Phương thức Form.Dispose() và Form.Close() có gì khác nhau???
    Gửi bởi vungtroicuabo trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 6
    Bài viết cuối: 07-08-2012, 11:02 AM
  2. Tương tác giữa 2 form độc lập nhau?
    Gửi bởi trinhbac7690 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 8
    Bài viết cuối: 08-05-2011, 07:55 PM
  3. Cách làm ContextMeNu như ContextMenu Window Explore?
    Gửi bởi thanhlinhhue trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 11-12-2009, 10:07 AM
  4. Sự khác nhau giữa Form.Visible=False và Form.Hide()??
    Gửi bởi hoangsan_c trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 30-03-2009, 11:08 AM
  5. Vấn đề với contextMenu
    Gửi bởi billle trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 1
    Bài viết cuối: 16-03-2009, 10:53 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