_Xác định tọa độ vị trí Dock trên MainForm
_Gắn sự kiện Form show() thì Dock nó vào tọa độ đó. Để ý trong Form có thuộc tính Dock, nếu làm như bạn thì tốt nhất manual.
Xin chào các thành viên của CongdongCviet.com !
Minh xin lỗi vì chưa có đóng góp gì nhiều cho diễn đàn, do kiến thức mình còn quá ít về C++, Do tự học lên có rất nhiều vấn đề khúc mắc xin các thành viên và ban quản trị diễn đàn chỉ giúp:
[ý tưởng]
Mình muốn làm một Application nhỏ (tool) để thao tác tới Database, đọc được các bảng và mục đích là Generate bean hỗ trợ cho lập trình viên JAVA.
[thực hiện - khó khăn]
- Mình đang sử dụng Visual C++6.0 , tạo Project ứng dụng là MFC MDI Application.
- Trong ứng dụng mình muốn có một Menu View->Show List Database,
sau đó nó sẽ hiển thị ra một Form(panel) Docable ở phía trái của ứng dụng, nó giống như bạn vào menu View->Toolbox->Toolbox sẽ docable vào phái trái của của sổ Editor trong bộ Visual stadio 2005 đấy.
- Mình đang rất khó khăn trong phần tạo Form(panel) Docable này.
- Xin mọi người hãy giúp đỡ và cho giải pháp.
Mong sớm nhận được sự trợ giúp của các bạn.
_Xác định tọa độ vị trí Dock trên MainForm
_Gắn sự kiện Form show() thì Dock nó vào tọa độ đó. Để ý trong Form có thuộc tính Dock, nếu làm như bạn thì tốt nhất manual.
[CENTER][B][U][FONT="Courier New"][COLOR="Green"]Học Tin như Gà học tắm nước sôi ...(:=(|)[/COLOR][/FONT][/U][/B][/CENTER]
Dockable chứ!
Mình đã giải quyết một yêu cầu tương tự như của bạn. Lấy ví dụ là màn hình IDE của Visual C++; Khi mình click chuột phải vào phần trống cuả Toolbar thì có các check box để ẩn hoặc hiện các toolbar như Standard, Build, Build Mini Bar... Và các phần này có thể kéo nó rời ra và thả vào một nơi bất kỳ nào đó. Đoạn mã sau của mình sẽ tạo một cái Bar như thế:
Tất nhiên trước khi tạo docking bar bạn phải tạo một cái main toolbar cái đã. Để cái docking bar có chỗ mà bám vào.Code://Tạo Hotkey Toolbar if (!m_wndHotkey.CreateEx(this) || !m_wndHotkey.LoadToolBar(IDR_HOTKEY)) { TRACE0("Failed to create toolbar\n"); return -1; // fail to create } //Thay đổi kiểu của toolbar và cho nó khả năng dock m_wndHotkey.ModifyStyle(0, TBSTYLE_FLAT); m_wndHotkey.EnableDocking(CBRS_ALIGN_ANY); EnableDocking(CBRS_ALIGN_ANY); //Gán wndHotkey dock vào Main toolbar DockControlBar(&m_wndHotkey); //Nếu bạn muốn gán các docking bar khác thì có thể dùng câu lệnh sau: DockControlBarLeftOf(&m_wndDlgBar,&m_wndHotkey); //m_wndDlgBar sẽ được dock vào bên phải của m_wndHotkey
Vouloir C'est pouvoir
Có thể kế thừa từ CControlBar nhưng nói chung tự viết thì cũng không đơn giản cho lắm, tốt hơn cứ tìm cái control nào có sẵn mà dùng ^_^
http://www.codeproject.com/docking/