Gioi Thieu Ve Cac Controls (Phan 2)

You might also like

Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 16

Tìm hiểu về các

controls trong VC6.0

Giảng viên: Trần Anh Tuấn


Tìm hiểu về các controls
Slider Control ( Thanh trượt )
Progress Control ( Thanh tiến trình )
Spin Control ( Đìều khiển Xoay )
TreeView ( Cây )
Tab Control ( Điều khiển Tab )
Slider Control ( Thanh trượt )
Là thanh trượt giữa hai điểm
Người dùng có thể dùng chuột hay
phím mũi tên để di chuyển
Các dạng có thể có :
Point : Both

Point : Bottom/Right

Check Enable Selection


Slider Control ( Thanh trượt )
Cách dùng :
 Dùng Class Winzard thêm Function cho sự
kiện WM_HSCROLL (hay WM_VSCROLL)

Khởi tạo :
CSliderCtrl* pSlider = (CSliderCtrl*)
GetDlgItem(IDC_SLIDER);
pSlider->SetRange(0,100);
pSlider->SetPos(0);
 Lấy vị trí trượt function OnHScroll :
pSlider->GetPos() ;
Progress Control
( Thanh Tiến Trình )
Là công cụ chỉ sự tiến triển của một hoạt
động
Thường thấy trong các hoạt động copy ,
xoá hay move files. Ngoài ra còn dùng
trong các chức năng install/uninstall
Các dạng có thể có :
Check Border

Check Smooth
Progress Control
( Thanh Tiến Trình )
Cách dùng :

Khởi tạo
CProgressCtrl* pProg = (CProgressCtrl*)
GetDlgItem( IDC_PROGRESS );
pProg->SetRange(0,100);
pProg->SetPos(0);

Sự kiện : NM_OUTOFMEMORY chỉ ra rằng
tiến trình không thể hoàn tất vì lỗi tràn
memory
 Sẽ chạy liên tục nếu kết hợp với sự kiện
định thời WM_TIMER
Spin Control ( Điều khiển xoay )
Dùng để điều chỉnh giá trị tăng giảm trên
cửa sổ giao diện

Người dùng có thể dùng chuột hay mũi


tên lên xuống để chỉnh
Các dạng có thể có :
Check Modal Frame

Default Style
Spin Control ( Điều khiển xoay )
Cách dùng :
 Dùng Class Winzard thêm Function cho sự
kiện WM_VSCROLL (hay WM_HSCROLL)

Khởi tạo :
CSpinButtonCtrl* pSpin = (CSpinButtonCtrl*)
GetDlgItem(IDC_SPIN);
pSpin->SetRange(0,100);
pSpin->SetPos(0);
 Lấy giá trị đang xoay :
OnVScroll (UINT nSBCode, UINT nPos,
CScrollBar* pScrollBar)
If ( pScrollBar->GetDlgCtrlID() == IDC_SPIN )
Tree View ( Cây )
Được dùng để hiển thị dạng cấu trúc cây

Thường thấy rất nhiều trong Window như


Windows Explorer , Registry , Computer ,
Service Managerment.
Tree View ( Cây )
Các dạng có thể có :

Check Has Button


……
Check Has Lines
Has Check Box
Check Lines at Root
Tree View ( Cây )
Cách dùng :
 Tạo một đối tượng kiểu TVINSERTSTRUCT
Ví dụ : TVINSERTSTRUCT tvinsert ;

Lấy đối tượng cây
Ví dụ : CTreeCtrl * pTree = (CTreeCtrl *)
GetDlgItem(IDC_TREE);


Thêm Function vào sự kiện chọn TVN_SELCHANGED :
OnSelchangedTree (NMHDR* pNMHDR, LRESULT*
pResult)
{
NM_TREEVIEW* pNMTreeView =
(NM_TREEVIEW*)pNMHDR;
hSelect = pNMTreeView->itemNew.hItem;
}
//Luu Y bien hSelect la kieu HTREEITEM
Tree View ( Cây )
 Insert :
Nút root : tvinsert.hParent = NULL;
tvinsert.item.pszText = “Root";
pTree->InsertItem(&tvinsert);

Nút cha : tvinsert.hParent = hSelect;


tvinsert.item.pszText = "Node Parent";
pTree->InsertItem(&tvinsert);

Nút lá : tvinsert.hParent = hSelect;


tvinsert.item.pszText = “Leaf";
pTree->InsertItem(&tvinsert);
Tab Control ( Điều khiển Tab )
Dùng để hiển thị từng trang

Dùng để tiết kiệm không gian trong trường


hợp quản lý nhiều thông tin
Tab Control ( Điều khiển Tab )
Cách dùng :
 Ý tường chính:
Bản thân tab control không cho phép vẽ lên trên

Not allow to put any


controls in this area

Cách dùng là xây dựng nhiều Dialog tương ứng


với nội dung từng tab
Thực hiện ShowWindow từng Dialog tương ứng
 Tạo 2 Dialog IDD_DIALOG1 , IDD_DIALOG2
 Tạo biến control m_tabCtrl cho IDD_TAB
 Thêm tab :
m_tabCtrl.InsertItem(0,“Tab 1");
m_tabCtrl.InsertItem(1,“Tab 2");

Tạo hai lớp CTAB1 và CTAB2 cho mỗi Dialog
 Khai báo : CTAB1 tab1 ; CTAB2 tab2 ;


Ẩn hiện tab theo sự kiện TCN_SELCHANGE
If ( m_tabCtrl.GetCurSel() == 0 )
{ tab1.ShowWindow(SW_SHOW);
tab2.ShowWindow(SW_HIDE); }
HẾT PHẦN CONTROLS

You might also like