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ố 11 kết quả

Đề tài: Làm cách nào ẩn Form Main khi mở form khác ?

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

    Mặc định Làm cách nào ẩn Form Main khi mở form khác ?

    Mình có form như sau :


    Nếu như mình click vào 1 items menu thì nó sẻ hiện lên form :


    Đồng thời ẩn form main kia đi.
    Sau khi mình thao tác với form word count xong mình đóng form word count lại thì form kia lại hiện lên.
    Có cách nào làm được điều này không?

    Mình có code cho nó :
    Code:
    private void wordCountToolStripMenuItem_Click(object sender, EventArgs e)
            {
                frmWordcount frm = new frmWordcount();
                this.Hide();
                frm.Show();
            }
    Nhưng khi mình click vào thì form main biên mất hoàn toàn không thấy đâu nữa
    Mong mọi người giúp đỡ

  2. #2
    Ngày gia nhập
    11 2008
    Nơi ở
    An Giang
    Bài viết
    502

    Bạn sữa lại như sau xem có đc ko
    Visual C# Code:
    1. private void wordCountToolStripMenuItem_Click(object sender, EventArgs e)
    2.         {
    3.             frmWordcount frm = new frmWordcount();
    4.             this.Hide();
    5.             frm.Showdialog();
    6.             this.Show();

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

    Mình thay vào thì khi click vào iteams menu nó hiên ra và biến mất ngay lập tức form word count đó -> không được

  4. #4
    Ngày gia nhập
    02 2011
    Nơi ở
    Vô Gia Cư
    Bài viết
    269

    bạn không nên dùng hàm Hide() như huuhung vì khi đó gọi lại form nó sẽ tự động mất đi.

    bạn nên dùng thuộc tính Visible của form.
    Ví dụ:
    Code:
                this.Visible = false;
                if ((new Form2()).ShowDialog() == System.Windows.Forms.DialogResult.OK)
                { this.Visible = true; }

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

    Mình thử của bạn rồi ! Nó vẫn như vậy bạn ơi ! Hiện form Wordcount lên -> Mất form Main
    Khi đóng form Wordcount nó vẫn không hiện form main lên bạn ạ
    Mọi người ai giúp mình đi !

  6. #6
    Ngày gia nhập
    02 2011
    Nơi ở
    Vô Gia Cư
    Bài viết
    269

    Mặc định Làm cách nào ẩn Form Main khi mở form khác ?

    Trích dẫn Nguyên bản được gửi bởi Promise Forever Xem bài viết
    Mình thử của bạn rồi ! Nó vẫn như vậy bạn ơi ! Hiện form Wordcount lên -> Mất form Main
    Khi đóng form Wordcount nó vẫn không hiện form main lên bạn ạ
    Mọi người ai giúp mình đi !
    Bạn thấy điều kiện hiện trở lại formmain của mình là gì không?
    if ((new Form2()).ShowDialog() == System.Windows.Forms.DialogResult.OK)
    muốn formmain hiện trở lại, trước khi tắt form thứ hai bạn phải cho nó trả về giá trị DialogResult là "OK", bạn thích là OK hay là gì cũng đc, không quan trọng!
    P/s: trường hợp bạn không muốn nó trả về một giá trị Dialog thì có thể sử dụng cách truyền biến giữa hai form, miễn sao là bạn truyền cho formmain một thông điệp là form2 đã tắt!

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

    Trích dẫn Nguyên bản được gửi bởi Click8A4 Xem bài viết
    Bạn thấy điều kiện hiện trở lại formmain của mình là gì không?
    if ((new Form2()).ShowDialog() == System.Windows.Forms.DialogResult.OK)
    muốn formmain hiện trở lại, trước khi tắt form thứ hai bạn phải cho nó trả về giá trị DialogResult là "OK", bạn thích là OK hay là gì cũng đc, không quan trọng!
    P/s: trường hợp bạn không muốn nó trả về một giá trị Dialog thì có thể sử dụng cách truyền biến giữa hai form, miễn sao là bạn truyền cho formmain một thông điệp là form2 đã tắt!
    Hehe, cách này dc nè bạn.!
    Mình mới test thử òi đóa.
    Thank bạn nhiều hen

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

    trong sự kiện click của menu bạn viết như sau:
    private void wordCountToolStripMenuItem_Click(object sender, EventArgs e)
    {
    frmWordCount f2 = new frmWordCount();
    this.Hide();
    f2.ShowDialog();
    }


    Trong sự kiện FormClosing cảu form wordCount bạn viết như sau:
    private void wordCount_FormClosing(object sender, FormClosingEventArgs e)
    {
    Main frm = new Main();
    this.Hide();
    frm.ShowDialog();


    }

  9. #9
    Ngày gia nhập
    02 2011
    Nơi ở
    Vô Gia Cư
    Bài viết
    269

    Trích dẫn Nguyên bản được gửi bởi thienthanittk37 Xem bài viết
    trong sự kiện click của menu bạn viết như sau:
    private void wordCountToolStripMenuItem_Click(object sender, EventArgs e)
    {
    frmWordCount f2 = new frmWordCount();
    this.Hide();
    f2.ShowDialog();
    }


    Trong sự kiện FormClosing cảu form wordCount bạn viết như sau:
    private void wordCount_FormClosing(object sender, FormClosingEventArgs e)
    {
    Main frm = new Main();
    this.Hide();
    frm.ShowDialog();


    }
    Về hình thức thì nhìn qua (mình chưa test) mình nghĩ là sẽ đáp ứng đc yêu cầu của chủ thớt, nhưng về quản lý bộ nhớ thì :
    + Nếu nhần chuyển qua lại giữa các form liên tục có thể dẫn đến một "đống" các form ở dạng ẩn.
    + form main luôn đc tạo mới chứ không phải là gọi lại form cũ -> về bản chất vấn đề là không đúng!

  10. #10
    Ngày gia nhập
    12 2010
    Nơi ở
    Cần thơ
    Bài viết
    273

    lúc trước tớ làm không được...tớ chợt nghĩ ra 1 cách là:
    sử dụng timer ấy...
    cho form2 show...cùng với active timer 1 giây...thì sẽ làm được
    muốn show lại form1 thì tạo 1 cái buton ở form2 hoặc set timer cho nó mở
    Have fun!
    Ai bất tài, tôi nhìn hoài chẳng thấy,
    Đi khắp phòng tôi lấy 1 tấm gương,
    Khẽ đặt lên một góc phía bức tường,
    Nhìn vào đó, tôi tận tường kẻ đó.

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

  1. ADO.NET error ấn tab đóng sub form tự động chở về main form
    Gửi bởi maiquocson trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 09-07-2013, 10:07 PM
  2. cách đưa 1 form bất kì vào Tabcontrol trong form Main
    Gửi bởi tan trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 21-03-2013, 11:21 AM
  3. Database Giao diện metro khi load lại form main nhưng form main không hiện lại
    Gửi bởi hoanganhover trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 04-07-2012, 11:04 PM
  4. Không truyền dữ liệu giữa 2 form được khi gọi form login trước form main
    Gửi bởi kienchochethahaha trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 3
    Bài viết cuối: 01-06-2011, 08:26 PM
  5. Lỗi không hiện được Form con Từ Form Main khi lam menu bằng Ribbon .Dotnetbar
    Gửi bởi dvminhpro45 trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 2
    Bài viết cuối: 25-04-2011, 09:05 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