Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 7 của 7
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Cách tạo và sử dụng Tab Control trong ứng dụng Dialog-Based

    Từng bước tạo ứng dụng TabControl với MFC

    (Edit trên Web khó quá, bạn nào biên tập lại hội mình nhé!).

    1. Tạo Diaglog-base Application với AppWizard


    2. Thêm TabControl vào cửa sổ Dialog


    3. Dùng Member Variable Wizard tạo biến cho đối tượng


    4. Khởi tạo Child-Dialog (Chú ý đặt thuộc tính cho Dialog là Border=None, Style=Child)


    6. Dùng ClassWizard tạo lớp cho Dialog


    - Tương tự thế cho Dialog2.

    7. Khởi tạo biến ChildDialog cho cửa sổ chính:

    Khai báo biến:

    Mã:
    public:    CTabCtrl m_TabCtrl;    CTabDlg1 m_TabDlg1;    CTabDlg2 m_TabDlg2;
    Khởi tạo đối tượng (Trong hàm OnInitDialog(), cửa sổ chính)

    Mã:
    // tạo các đối tượng child-dialogthis->m_TabDlg1.Create(CTabDlg1::IDD, &m_TabCtrl);    this->m_TabDlg2.Create(CTabDlg2::IDD, &m_TabCtrl); // tạo các table tương ứng    this->m_TabCtrl.InsertItem(0, _T("Tab1"), -1);    this->m_TabCtrl.InsertItem(1, _T("Tab2"), -1); // căn chỉnh tọa độ    CRect TabRect;        this->m_TabCtrl.GetClientRect(&TabRect);    this->m_TabCtrl.AdjustRect(FALSE, &TabRect);    this->m_TabDlg1.MoveWindow(TabRect);    this->m_TabDlg2.MoveWindow(TabRect);    this->m_TabDlg1.ShowWindow(SW_SHOW);
    8. Khai báo sự kiện cho TabControl:




    Mã:
    void CTabSampleDlg::OnTcnSelchangingTab1(NMHDR *pNMHDR, LRESULT *pResult){// Ẩn các cửa sổ    switch (this->m_TabCtrl.GetCurSel())    {        case 0: this->m_TabDlg1.ShowWindow(SW_HIDE); break;        case 1: this->m_TabDlg2.ShowWindow(SW_HIDE); break;        }     *pResult = 0;}
    Mã:
    void CTabSampleDlg::OnTcnSelchangeTab1(NMHDR *pNMHDR, LRESULT *pResult){// Hiện các cửa sổ    switch (this->m_TabCtrl.GetCurSel())    {        case 0: this->m_TabDlg1.ShowWindow(SW_SHOW); break;        case 1: this->m_TabDlg2.ShowWindow(SW_SHOW); break;        }     *pResult = 0;}
    Ứng dụng và Mã nguồn chương trình ở đính kèm

    Mình dùng Visual Studio .NET 2003
    Mọi người nên cập nhật bản mới đi (visual studio 6 có bộ thư viện STL hơi lởm).

    Để tạo child dialog, bạn vào phần resource, chọn Insert Dialog. Trong phần property bạn chọn style là child & border là None.

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    giúp với, ai biết ghép dialog vào tab trong VC++ trên win32 không nhỉ. Giúp em với. Em cần ngay .

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Tab Control dc bàn nhiều tại đây, Các bạn có thể đến đó hỏi, tham khảo.
    http://forums.congdongcviet.com/showthread.php?t=5433

  4. #4
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi goby
    Minh tao ra 1 dialog co tab1, tab2, tab3 nhưng khi nhấn và Tab key thì ko thể chuyển từ tab này sang tab kia được. có ai biết ko ạ? giúp e với!
    đọc code kỹ một chút nhé, project demo rất rõ ràng.

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn ơi, mình build demo của bạn. Khi nhấn vào tab nó không di chuyển giữa các tabone, tabtwo, tabthree đâu. chỉ tab được giữa các control thôi. Bạn check lại cho mình nhé.
    Cảm ơn bạn nhiều!
    Trích dẫn Gửi bởi nguyenquoc
    đọc code kỹ một chút nhé, project demo rất rõ ràng.

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Minh tao ra 1 dialog co tab1, tab2, tab3 nhưng khi nhấn và Tab key thì ko thể chuyển từ tab này sang tab kia được. có ai biết ko ạ? giúp e với!

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi goby
    Bạn ơi, mình build demo của bạn. Khi nhấn vào tab nó không di chuyển giữa các tabone, tabtwo, tabthree đâu. chỉ tab được giữa các control thôi. Bạn check lại cho mình nhé.
    Cảm ơn bạn nhiều!
    đã check lại, không có vấn đề gì, bạn xem lại thêm 1 lần nữa đi, thử thêm các control khác vào Dlg one, Dlg tow, Dlg three để dể phân biệt.

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •