mfc

Bộ hẹn giờ là một đối tượng phi không gian sử dụng các khoảng thời gian định kỳ từ máy tính hoặc từ ứng dụng của bạn. Để hoạt động, cứ sau một khoảng thời gian, bộ điều khiển sẽ gửi một thông báo đến hệ điều hành. Không giống như hầu hết các điều khiển khác, bộ đếm thời gian MFC không có nút để đại diện cho nó cũng như không có lớp. Để tạo bộ đếm thời gian, bạn chỉ cần gọi phương thức CWnd::SetTimer(). Cuộc gọi chức năng này tạo bộ đếm thời gian cho ứng dụng của bạn. Giống như các điều khiển khác, bộ hẹn giờ sử dụng mã định danh.

Hãy để chúng tôi tạo một ứng dụng dựa trên hộp thoại MFC mới.

Bước 1 – Xóa Chú thích và đặt ID của nó thành IDC_STATIC_TXT

Bước 2 – Thêm biến giá trị cho điều khiển văn bản.

MFC Bộ hẹn giờ

Bước 3 – Chuyển đến chế độ xem lớp trong giải pháp.

Bước 4 – Nhấp vào lớp CMFCTimeDlg.

Bước 5 – Trong cửa sổ Thuộc tính, nhấp vào nút Tin nhắn.

MFC Bộ hẹn giờ

Bước 6 – Nhấp vào trường WM_TIMER và nhấp vào mũi tên của hộp tổ hợp. Lựa chọnOnTimer và triển khai sự kiện.

void CMFCTimerDlg::OnTimer(UINT_PTR nIDEvent) { 
   // TODO: Add your message handler code here and/or call default 
   CTime CurrentTime = CTime::GetCurrentTime();  
	
   int iHours = CurrentTime.GetHour(); 
   int iMinutes = CurrentTime.GetMinute(); 
   int iSeconds = CurrentTime.GetSecond(); 
   CString strHours, strMinutes, strSeconds;  
 
   if (iHours < 10) 
      strHours.Format(_T("0%d"), iHours); 
   else 
      strHours.Format(_T("%d"), iHours);  
 
   if (iMinutes < 10) 
      strMinutes.Format(_T("0%d"), iMinutes); 
   else 
      strMinutes.Format(_T("%d"), iMinutes);  
   
   if (iSeconds < 10) 
      strSeconds.Format(_T("0%d"), iSeconds); 
   else 
      strSeconds.Format(_T("%d"), iSeconds);  
 
   m_strTimer.Format(_T("%s:%s:%s"), strHours, strMinutes, strSeconds); 
   
   UpdateData(FALSE); 
   CDialogEx::OnTimer(nIDEvent); 
}

Bước 7 – Khi đoạn mã trên được biên dịch và thực thi, bạn sẽ thấy đầu ra sau.

MFC Bộ hẹn giờ

MFC – Bộ chọn ngày & giờ

Kiểm soát bộ chọn ngày và giờ ( CDateTimeCtrl ) triển khai phương pháp nhập hoặc chọn một ngày cụ thể một cách trực quan và dễ nhận biết. Giao diện chính của điều khiển có chức năng tương tự như hộp tổ hợp. Tuy nhiên, nếu người dùng mở rộng điều khiển, điều khiển lịch tháng sẽ xuất hiện (theo mặc định), cho phép người dùng chỉ định một ngày cụ thể. Khi một ngày được chọn, điều khiển lịch tháng sẽ tự động biến mất.

Đây là danh sách các phương thức trong lớp CDateTimeCtrl.

Chúng ta hãy xem xét một ví dụ đơn giản bằng cách tạo một ứng dụng MFC mới.

Bước 1 – Xóa Chú thích và đặt ID của nó thành IDC_STATIC_TXT.

Bước 2 – Thêm biến giá trị cho điều khiển văn bản.

MFC Bộ hẹn giờ

Bước 3 – Kéo điều khiển Bộ chọn ngày giờ.

MFC Bộ hẹn giờ

Bước 4 – Thêm biến kiểm soát cho Bộ chọn ngày giờ.

MFC Bộ hẹn giờ

Bước 5 – Thêm trình xử lý Sự kiện cho Bộ chọn Ngày Giờ.

MFC Bộ hẹn giờ

Bước 6 – Đây là triển khai trình xử lý sự kiện.

void CMFCDateAndTimePickerDlg::OnDtnDatetimechangeDatetimepicker1(NMHDR *pNMHDR, LRESULT *pResult){ 
   LPNMDATETIMECHANGE pDTChange = reinterpret_cast  <LPNMDATETIMECHANGE>(pNMHDR); 
   // TODO: Add your control notification handler code here 
  
   GetDlgItemText(IDC_DATETIMEPICKER1, m_strValue); 
   UpdateData(FALSE); 
   *pResult = 0; 
}

Bước 7 – Khi bạn chạy ứng dụng trên, bạn sẽ thấy đầu ra sau. Chọn bất kỳ ngày nào, nó sẽ hiển thị trên Điều khiển văn bản tĩnh.

MFC Bộ hẹn giờ

MFC – Tranh

Nếu bạn cần hiển thị ảnh cho ứng dụng của mình, Visual C++ cung cấp một điều khiển đặc biệt cho mục đích đó.

Chúng ta hãy xem xét một ví dụ đơn giản bằng cách tạo một ứng dụng dựa trên hộp thoại MFC mới.

Bước 1 – Nhấp chuột phải vào hộp thoại trong cửa sổ thiết kế và chọn Chèn Điều khiển ActiveX.

MFC Bộ hẹn giờ

Bước 2 – Chọn Microsoft Picture Click Control và nhấp vào OK.

MFC Bộ hẹn giờ

Bước 3 – Thay đổi kích thước Picture control và trong cửa sổ Properties, nhấp vào trường Picture.

Bước 4 – Duyệt thư mục chứa Ảnh. Chọn bất kỳ hình ảnh.

Bước 5 – Chạy ứng dụng này và bạn sẽ thấy đầu ra sau.

MFC Bộ hẹn giờ

MFC – Trình chỉnh sửa hình ảnh (xem thêm)

Để lại một bình luận