mfc學習 day1 listcontrol和 edit使用。及對listcontrol增刪改
阿新 • • 發佈:2018-12-18
listcontrol 和 edit使用,如何將從edit控制元件中獲取資料和如何將資料列印到控制元件中。
CDialogEx::OnInitDialog(); // 將“關於...”選單項新增到系統選單中。 CListCtrl*pList =(CListCtrl*)GetDlgItem(IDC_LIST1); pList->InsertColumn(0,"工號",0,120); pList->InsertColumn(1,"姓名",0,160); pList->InsertColumn(2,"工資",0,160); // IDM_ABOUTBOX 必須在系統命令範圍內。 ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000); void CMFC1Dlg::OnBnClickedButadd() { // TODO: 在此新增控制元件通知處理程式程式碼 CString str; GetDlgItemText(IDC_NUM,str); CListCtrl *pList = (CListCtrl*)GetDlgItem(IDC_LIST1); //pList->InsertItem(0,str); int nCount = pList->GetItemCount(); //獲取列表總數 pList->InsertItem(nCount,str); GetDlgItemText(IDC_NAME,str); pList->SetItemText(nCount,1,str); GetDlgItemText(IDC_SALA,str); pList->SetItemText(nCount,2,str); } void CMFC1Dlg::OnBnClickedButdel() { // TODO: 在此新增控制元件通知處理程式程式碼 CListCtrl *pList=(CListCtrl*)GetDlgItem(IDC_LIST1); //int nSel = pList->GetSelectionMark();//選中的行數 POSITION pos=pList->GetFirstSelectedItemPosition(); int nSel=pList->GetNextSelectedItem(pos); if(nSel<0) { AfxMessageBox("請先選中一行"); return ; } if(IDYES==AfxMessageBox("確認選中刪除的資料",MB_YESNO)) pList->DeleteItem(nSel); } void CMFC1Dlg::OnBnClickedButmod() { // TODO: 在此新增控制元件通知處理程式程式碼 CListCtrl *pList=(CListCtrl*)GetDlgItem(IDC_LIST1); int nSel = pList->GetSelectionMark(); if(nSel<0) { AfxMessageBox("請先選中一行"); return; } CString str; GetDlgItemText(IDC_NAME,str); pList->SetItemText(nSel,1,str); GetDlgItemText(IDC_SALA,str); pList->SetItemText(nSel,2,str); } void CMFC1Dlg::OnBnClickedButtest() { // TODO: 在此新增控制元件通知處理程式程式碼 CString str; GetDlgItemText(IDC_LEN,str); int nLen=str.GetLength(); str.Format("長度=%d",nLen); SetDlgItemText(IDC_RESULT,str); } void CMFC1Dlg::OnBnClickedButton3() { // TODO: 在此新增控制元件通知處理程式程式碼 CString str; GetDlgItemText(IDC_LEN,str); BOOL b= str.IsEmpty(); if(b) SetDlgItemText(IDC_RESULT,"是空字串"); else SetDlgItemText(IDC_RESULT,"是空字串"); }