Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 14 kết quả

Đề tài: Gọi một form trong C#. Không cho tương tác tới các form khác như thế nào?

  1. #1
    Ngày gia nhập
    03 2009
    Bài viết
    31

    Mặc định Gọi một form trong C#. Không cho tương tác tới các form khác như thế nào?

    Các bác cho em hỏi tý, em có 2 Form là Form1 và Form2, Form1 của em gọi Form2.Show(); thì nó hiển thị lên, nhưng bgiờ em muốn nếu mình không tắt hay kết thúc Form2 thì Form1 sẽ không làm việc được tức là không thể Click lên nó được
    Vây thì phải làm sao các bác,giúp em với.
    Nếu biết ngày mai em lấy chồng
    Anh về cưới vợ thế là xong
    Đợi mai sau này con anh lớn
    Tìm đến con em trả thù lòng

  2. #2
    Ngày gia nhập
    06 2007
    Bài viết
    21

    Bạn đã thử This.Hide chưa
    Đã được chỉnh sửa lần cuối bởi devil0604 : 29-04-2009 lúc 07:54 PM. Lý do: sửa
    Con đường hạnh phúc của mỗi người là khác nhau.

  3. #3
    Ngày gia nhập
    03 2009
    Bài viết
    31

    anh ơi như thế thì Form1 sẽ biến,và khi tắt Form 2 thì chúng ta sẽ ko làm việc được trên Form1 nữa.
    Nếu biết ngày mai em lấy chồng
    Anh về cưới vợ thế là xong
    Đợi mai sau này con anh lớn
    Tìm đến con em trả thù lòng

  4. #4
    Ngày gia nhập
    09 2008
    Nơi ở
    Ở nhà chứ đâu... nhìn cái gì?!?!
    Bài viết
    218

    Đã đã biết và đang dùng phướng thức .Show() của Form; thì hãy thử tìm hiểu thêm phuơng thức .ShowDialog(IWin32Window owner) nhé.

    Ví dụ:
    Visual C# Code:
    1. public class Form1 : Form
    2. {
    3. ...
    4.     Form2 f2 = new Form2();
    5.     f2.ShowDialog(this) // Form2 sẽ hiện và Form1 sẽ ko thể làm việc được đến khi Form2 đóng...
    6. ...
    7. }
    Quá nản cái viễn cảnh hiện tại. Nhiều "thanh niên" sống "ảo" quá. Thời nào rồi mà còn hỏi WinForms + ADO.NET

  5. #5
    Ngày gia nhập
    03 2009
    Bài viết
    31

    em cảm ơn bác rất nhiều,hay quá.
    thanks.
    Nếu biết ngày mai em lấy chồng
    Anh về cưới vợ thế là xong
    Đợi mai sau này con anh lớn
    Tìm đến con em trả thù lòng

  6. #6
    Ngày gia nhập
    04 2009
    Nơi ở
    Hà Nội
    Bài viết
    733

    Mặc định Gọi một form trong C#. Không cho tương tác tới các form khác như thế nào?

    Qua bài viết của bạn mình xin nói qua 1 chút, ngắn gọn về các loại Form trong Windows Forms.
    3 loại Form đó là :
    1) MDI Form (Multiple Document Interface):Đây là Form cha.Cho phép bạn trình bày các Form khác trong Parent Form của nó.
    2) Child Form:(Form con):Xuất hiện nằm trong MDI Form.
    3) Normal Form: Những Form mở ra không nằm trong Parent Form thì gọi là Normal Form.

    *.Để một Form là MDI Form thì thuộc tính IsMdiContainer có giá trị là True.Thuộc tính này có thể khai báo ở chế độ thiết kế hoặc là lúc thi hành chương trình.
    *.Để Form trở thành Child Form thì bạn phải khai báo thuộc tính MdiParent ứng với Mdi Form trong Project.Lưu ý thuộc tính MdiParent không xuất hện trong chế độ thiết kế.Và bạn không thể sử dụng phương thức ShowDialog cho Form mở dạng Child Form.Bởi vì khi Child Form nạp lên màn hình,kích thước và không gian làm việc của Child Form phụ thuộc vào không gian của MDI Form.
    *.Normal Form: Nếu bạn sử dụng phương thức Show thì Form mở ra cho phép chuyển sang làm việc trên những Form đã mở ra trước đó. Còn trong trường hợp bạn sử dụng phương thức ShowDialog thì Form mở ra là dạng Modal Form và bạn sẽ không thể chuyển sang làm việc trên Form đã mở trước đó!
    Hy vọng với 1 chút lý thuyết này giúp cho bạn nào chưa hiểu về Form sẽ có thêm chút kiến thức!

  7. #7
    Ngày gia nhập
    03 2009
    Bài viết
    18

    Trích dẫn Nguyên bản được gửi bởi snake_programmer Xem bài viết
    Qua bài viết của bạn mình xin nói qua 1 chút, ngắn gọn về các loại Form trong Windows Forms.
    3 loại Form đó là :
    1) MDI Form (Multiple Document Interface):Đây là Form cha.Cho phép bạn trình bày các Form khác trong Parent Form của nó.
    2) Child Form:(Form con):Xuất hiện nằm trong MDI Form.
    3) Normal Form: Những Form mở ra không nằm trong Parent Form thì gọi là Normal Form.

    *.Để một Form là MDI Form thì thuộc tính IsMdiContainer có giá trị là True.Thuộc tính này có thể khai báo ở chế độ thiết kế hoặc là lúc thi hành chương trình.
    *.Để Form trở thành Child Form thì bạn phải khai báo thuộc tính MdiParent ứng với Mdi Form trong Project.Lưu ý thuộc tính MdiParent không xuất hện trong chế độ thiết kế.Và bạn không thể sử dụng phương thức ShowDialog cho Form mở dạng Child Form.Bởi vì khi Child Form nạp lên màn hình,kích thước và không gian làm việc của Child Form phụ thuộc vào không gian của MDI Form.
    *.Normal Form: Nếu bạn sử dụng phương thức Show thì Form mở ra cho phép chuyển sang làm việc trên những Form đã mở ra trước đó. Còn trong trường hợp bạn sử dụng phương thức ShowDialog thì Form mở ra là dạng Modal Form và bạn sẽ không thể chuyển sang làm việc trên Form đã mở trước đó!
    Hy vọng với 1 chút lý thuyết này giúp cho bạn nào chưa hiểu về Form sẽ có thêm chút kiến thức!
    Cảm ơn bạn nhiều.bây giờ thì đã rõ ràng. hihi

  8. #8
    Ngày gia nhập
    03 2009
    Bài viết
    16

    Mình cũng hiểu rồi.
    Mình có 1 vấn đề khác cũng gần tương tự nhưng chưa giải quyết được: Mình cũng có 2 form 1 và 2, form1 chạy, sau 5s thì gọi form2, bây giờ mình mới chỉ ẩn form1 khi gọi form2 lên chứ chưa thể tắt form1 ngay khi gọi form2 nếu không sẽ tắt cả chương trình. Bro nào có thể hướng dẫn mình không?

    PS: có thể hiểu form1 là form chứa hình của chương trình, khi bắt đầu chạy tầm 5s sẽ tắt và gọi form2 là formMain của chương trình.
    Giúp mình nhé.

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

    Cảm ơn các bạn rất nhiều, có vấn đề showdialog thui, mà tui kiếm gần cả ngày, hix.

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

    Mình cũng có 1 vấn đề tương tự muốn hỏi:
    Mình co 2 form KhachHang va TimKhachHang.
    Ở form KhachHang co 1 button la : bttim_kh. Khi click button này thì hiển thị form TimKhachHang.
    Ở form TimKhachHang co 1 button la bthienthi_kh. Khi click bt này thì h/thị form KhachHang theo mã tìm kiếm.
    Vấn đề mình muốn hỏi là:
    - Làm sao để ở Frm KhachHang->click bttim_kh thì mở Frm TimKhachHang, sau đó click bthienthi_kh thi Frm Frm TimKhachHang ẩn hoặc đóng lai, tiếp theo mở Frm KhachHang lên nhưng làm sao active Frm KhachHang đã được mở trước đó, chứ không mở ra 1 Form KhachHang mới .
    - Thứ 2 là từ Frm TimKhachHang click bthienthi_kh -> open Frm KhachHang, nhưng khi đó Frm KhachHang không còn nằm trong Frm_main(Form cha) nữa, mà có thể kéo thả tự do, không bị giới hạn trong Frm_main, làm sao để khắc phục vấn đề trên, mình muốn Frm KhachHang vẫn nằm trong Frm_main.
    Rất mong các bác chỉ giáo khắc phục v/đ trên. Xin cảm ơn

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

  1. Làm thế nào để click vào nút minimum trong form thì form ẩn đi không xuất hiện ở taskbar?
    Gửi bởi thanhhungph127 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 16-07-2013, 09:45 PM
  2. làm trong suốt Form nhưng vẫn thao tác được trên Form..
    Gửi bởi lequ0ch0anglt trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 7
    Bài viết cuối: 28-10-2011, 11:31 PM
  3. Graphic Load lại form mà không phải tạo form mới trong C# làm thế nào?
    Gửi bởi langtu4t trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 02-09-2011, 11:42 PM
  4. làm thế nào để chèn ảnh .gif vào form ,hoặc làm thế nào để có ảnh sinh động trong form
    Gửi bởi thanthoai101010 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 30-11-2010, 01:03 PM
  5. Gọi form trong MFC 2005 như thế nào để có thể tương tác cả 2 form?
    Gửi bởi nam_dkn trong diễn đàn Thắc mắc lập trình Visual C++
    Trả lời: 3
    Bài viết cuối: 10-04-2009, 01:41 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