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

Đề tài: FormStart gọi Form2 ,Form2 gọi lại FormStart nhưng dữ liệu của FormStart trước đó phải được giữ lại

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

    Mặc định FormStart gọi Form2 ,Form2 gọi lại FormStart nhưng dữ liệu của FormStart trước đó phải được giữ lại

    mình mới nhảy vào C# nên hởi khó khăn :( .

    Cụ thể chương trình thế này :
    FormStart Có btnNhapMang ,txtMang ,btnLoc ,btnXuatMang ,txtXuat

    khi bấm vào btnNhapMang thì sẽ nhập mảng từ txtMang với định dạng mỗi số cách nhau bằng dấu ','

    khi bấm btnLoc thì sẽ xuất ra FormLoc cho phép chọn kiểu lọc .Như lọc số chẵn ,lọc số nguyên tố ,...

    giờ gọi FormLoc thì không có vấn đề gì .Nhưng từ FormLoc mà gọi lại FormStart thì không giữ nguyên được dữ liệu vì mình xài :

    C++ Code:
    1. FormStart formStart = new FormStart();

    project

    ngoài ra mình có sử dụng biến toàn cục thay vì biến cục bộ .Ai có cách nào tốt hơn thì help luôn nha :d
    Attached Files Attached Files

  2. #2
    Ngày gia nhập
    04 2009
    Bài viết
    22

    Mặc định khỡi tại form là static

    bạn dùng: public static FormStart formStart = new FormStart();
    khi bạn ở 1 form khác gọi form trên thì dùng: classname.formStart.Show();
    cứ thế, cái quan trọng là ở chổ khai báo public static và cách gọi đối tượng đó lên.
    Trên đây là cách giải quyết chứ code cụ thể thì tôi không nhớ chính xác vì cũng lâu rồi chưa dùng lại
    hy vọng giúp đc chút ít gì đó

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

    Trích dẫn Nguyên bản được gửi bởi sayit Xem bài viết
    bạn dùng: public static FormStart formStart = new FormStart();
    khi bạn ở 1 form khác gọi form trên thì dùng: classname.formStart.Show();
    cứ thế, cái quan trọng là ở chổ khai báo public static và cách gọi đối tượng đó lên.
    Trên đây là cách giải quyết chứ code cụ thể thì tôi không nhớ chính xác vì cũng lâu rồi chưa dùng lại
    hy vọng giúp đc chút ít gì đó
    Không ổn cho lắm .Mình cũng thử cách trên rồi nhưng bị dính lỗi "invalid"

    nhưng mình có phương án khác là

    C++ Code:
    1. private void btnLocMang_Click(object sender, EventArgs e)
    2.         {
    3.             FormLocMang formLocMang = new FormLocMang();
    4.             formLocMang.Show();
    5.             //if(formLocMang.numCheck() == 1)
    6.  
    7.         }

    sau đó trong FormLocMang cài đặt hàm :

    C++ Code:
    1. public int NumCheck()
    2.         {
    3.             if (checkBoxChan.Checked == true)
    4.                 return 1;
    5.         }
    nhưng khổ nỗi nó lại không cho trả về kiểu int chỉ cho phép kiểu void why ???

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

    Trích dẫn Nguyên bản được gửi bởi vipzero Xem bài viết
    Không ổn cho lắm .Mình cũng thử cách trên rồi nhưng bị dính lỗi "invalid"

    nhưng mình có phương án khác là

    C++ Code:
    1. private void btnLocMang_Click(object sender, EventArgs e)
    2.         {
    3.             FormLocMang formLocMang = new FormLocMang();
    4.             formLocMang.Show();
    5.             //if(formLocMang.numCheck() == 1)
    6.  
    7.         }

    sau đó trong FormLocMang cài đặt hàm :

    C++ Code:
    1. public int NumCheck()
    2.         {
    3.             if (checkBoxChan.Checked == true)
    4.                 return 1;
    5.         }
    nhưng khổ nỗi nó lại không cho trả về kiểu int chỉ cho phép kiểu void why ???
    Không phải nó không cho trả về int mà là bạn chưa trả về đầy đủ các trường hợp sau if
    Nếu checkBoxChan được check thì nó trả về 1, còn không được check thì trả về bao nhiêu?
    Bạn chưa cho giá trị trả về của trường hợp chưa được check mà.

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

    Trích dẫn Nguyên bản được gửi bởi SITUVNX Xem bài viết
    Không phải nó không cho trả về int mà là bạn chưa trả về đầy đủ các trường hợp sau if
    Nếu checkBoxChan được check thì nó trả về 1, còn không được check thì trả về bao nhiêu?
    Bạn chưa cho giá trị trả về của trường hợp chưa được check mà.
    ặc lỗi này mà mình cũng bị .@@~ gà vãi

    Mình tìm ra rồi dùng SingleTon nó dễ dàng hơn và thiết kế tốt hơn nữa :d

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

  1. Hỏi cách gọi hàm của form2 từ form1 bằng delegate
    Gửi bởi khanhduy.8hpm trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 3
    Bài viết cuối: 20-09-2012, 01:03 PM
  2. Tắt form1 sau khi mở form2
    Gửi bởi hoanggia trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 8
    Bài viết cuối: 01-07-2011, 02:07 PM
  3. form2 hiện ra nhưng form1 không mất đi ?
    Gửi bởi thanthoai101010 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 8
    Bài viết cuối: 30-11-2010, 10:58 AM
  4. Vấn đề về biến giữa form1 và form2
    Gửi bởi Batchuoc_09 trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 4
    Bài viết cuối: 24-02-2010, 08:37 AM
  5. Vấn đề lấy dữ liệu từ Form1 sang Form2
    Gửi bởi Jindo trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 4
    Bài viết cuối: 04-09-2009, 08:12 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