DIỄN ĐÀN LỚP SƯ PHẠM TOÁN K10 - ĐẠI HỌC HẢI PHÒNG
Thay mặt cho Ban Quản Trị diễn đàn và toàn thể thành viên lớp SP TOÁN K10 - ĐẠI HỌC HẢI PHÒNG , Nguyễn Tiến Hùng chúc bạn một ngày tốt lành, vui vẻ trong cuộc sống, và đóng góp xây dựng forum một cách tích cực nhất nếu có thể, mình xin cảm ơn !

Best wish for you !

>> S2 Sư Phạm TOÁN K10 S2 <<
DIỄN ĐÀN LỚP SƯ PHẠM TOÁN K10 - ĐẠI HỌC HẢI PHÒNG
Thay mặt cho Ban Quản Trị diễn đàn và toàn thể thành viên lớp SP TOÁN K10 - ĐẠI HỌC HẢI PHÒNG , Nguyễn Tiến Hùng chúc bạn một ngày tốt lành, vui vẻ trong cuộc sống, và đóng góp xây dựng forum một cách tích cực nhất nếu có thể, mình xin cảm ơn !

Best wish for you !

>> S2 Sư Phạm TOÁN K10 S2 <<
DIỄN ĐÀN LỚP SƯ PHẠM TOÁN K10 - ĐẠI HỌC HẢI PHÒNG
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

DIỄN ĐÀN LỚP SƯ PHẠM TOÁN K10 - ĐẠI HỌC HẢI PHÒNG

Niên khóa 2009-2013
 
Trang ChínhPortalGalleryTìm kiếmLatest imagesĐăng kýĐăng Nhập
Top posters
Nguyễn Tiến Hùng (92)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
haianh (37)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
hangbaby_hp91 (21)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
papachi (13)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
giangxinh (8)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
khanhtiep_19 (5)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
PhạmTrungHiếu (3)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
oahqnam8045 (1)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
oahqvan8011 (1)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
tttamphong (1)
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_lcapTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Voting_barTạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Vote_rcap 
Bài Viết Mới Nhất
Bài gửiNgười gửiThời gian Gửi
Phần mềm crack các game của Popcap Tue Apr 02, 2013 4:20 pm
Cách ôn và học triết hiệu quả Wed Dec 22, 2010 8:53 am
Bảng điểm lớp ta Tue Nov 09, 2010 8:40 pm
đề cương tư tưởng đây! vào mà xem đề nghị bà con tôn trọng bản quyền nah Tue Nov 09, 2010 8:35 pm
Cn Tin k10 la liếm nhờ Thu Sep 30, 2010 4:39 pm
Em yêu anh nhju lắm Sun Aug 15, 2010 11:03 pm
Rồi em sẽ hết iu anh... Sun Aug 15, 2010 3:08 pm
Nhật ký mang tên SP Toán K10 Sat Aug 14, 2010 6:47 pm
Mỗi ngày tôi chọn một niềm vui Mon Aug 09, 2010 7:07 pm
NGƯỜI CÓ CÁI TÊN ĐỘC ĐÁO TỰ GIỚI THIỆU VỀ MÌNH.HI'HI'HI' Sat Aug 07, 2010 7:04 pm

Chào mừng bạn đến với
Diễn Đàn Lớp Sư Phạm Toán K10
Trường Đại Học Hải Phòng - Hùng chúc các bạn vui vẻ!

» Nếu đã có tài khoản, đăng nhập tại đây:«

» Chưa có tài khoản? Nhấn vào đây để đăng ký «
Share|
Tiêuđề

Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down
Tác giảThông điệp
Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC P_top110

[Thành viên]

Nguyễn Tiến Hùng
[SP TOÁN K10] Administrator
Nguyễn Tiến Hùng

Status:

Tổng số bài gửi : 92
Điểm Tích Cực : 84712
Join date : 24/07/2010
Tuổi : 32
Đến từ : 402-C7 buliding

Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC P_bott11
Bài gửiTiêu đề: Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC I_icon_minitimeMon Jul 26, 2010 8:16 am

https://suphamtoank10.forumvi.com


Thư viện các class MFC của VC++ không có sẵn class Timer chuyên quản lý thời gian, tuy nhiên 2 class CWindow và CWnd (cùng các class con của chúng như CDialog) có method SetTimer(), đây là sự bao đóng của hàm API Windows cùng tên, nó cho phép tạo 1 timer luận lý với thời gian đếm xác định, mỗi lần timer đếm hết, nó tạo 1 thông báo tên là WM_TIMER gửi về cho cửa sổ ứng dụng xử lý. Để thấy rõ việc dùng method Timer giải quyết bài toán cụ thể của bạn, chúng tôi có viết 1 ứng dụng nhỏ demo đồng hồ chạy ngược bằng VC++. Qui trình xây dựng ứng dụng cụ thể như sau:

1. chạy VC++, chọn menu File.New để hiển thị cửa sổ New. Chọn Project "MFC ClassWizard (exe), chọn vị trí thư mục chứa Project, nhập tên Project là DispTimer rồi OK để bắt đầu qui trình wizard.

2. Ở cửa sổ "Step 1", bạn chọn mục "Dialog Based" rồi chọn button Finish để hoàn tất qui trình wizard tạo ứng dụng dùng giao diện Form (dialog - hộp thoại).

3. Khi cửa sổ thiết kế Form ứng dụng hiển thị, bạn thiết kế Form có dạng sau:
Form gồm 1 label để hiển thị giá trị giờ và 2 button có sẵn là OK và Cancel để dừng phần mềm khi cần.

4. Chọn menu View.ClassWizard, chọn class làm việc là CDispTimerDlg, chọn tag "Member Variables" và định nghĩa biến kết hợp với đối tượng label với tên là m_timer (kiểu CString). Trong lập trình, bạn sẽ truy xuất đối tượng label thông qua biến m_timer.

5. Cũng trong cửa sổ ClassWizard, chọn tag "Message maps", chọn Object ID là CDispTimerDlg, duyệt tìm và chọn hàm WindowProc(), nhấn button "Add Function" để tạo hàm xử lý sự kiện cho Form giao diện rồi viết code cho hàm này như sau:

LRESULT CDispTimerDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam) {
// TODO: Add your specialized code here and/or call the base class
char buf[256];
switch (message)
{
case WM_TIMER :
if (giay != 0) giay--;
else {// nếu thành phần giây = 0
giay = 59;
if (phut !=0) phut--;
else { // nếu thành phần phút = 0
phut = 59;
if (gio != 0) gio--;
else {// hết giờ
gio = phut = giay = 0;
}
}
}
//hiển thị thời gian còn lại lên Label Timer
UpdateData(TRUE);
wsprintf(buf,"%dh %dp %ds",gio,phut,giay);
m_timer = buf;
UpdateData(FALSE);
//xóa Timer
KillTimer(ID_TIMER);
}
return CDialog::WindowProc(message, wParam, lParam);
}
6. Hiển thị file DispTimerDlg.h (đặc tả interface sử dụng của class Form ứng dụng), thêm lệnh định nghĩa 3 thuộc tính lưu giữ giá trị thời gian vào vị trí thích hợp trong class:
int gio, phut, giay;
7. Hiển thị file DispTimerDlg.cpp (hiện thực class Form ứng dụng), thêm đoạn lệnh khởi động timer và giá trị bắt đầu vào cuối hàm OnInitDialog():
#define ID_TIMER 55
BOOL CDispTimerDlg::OnInitDialog(){
...
// TODO: Add extra initialization here
// tạo timer đếm 1s = 1000ms
SetTimer(ID_TIMER,1000,NULL);
// khởi động giá trị đầu của đồng hồ
gio = 10; phut = 20; giay = 30;
//hiển thị đồng hồ lên Label Timer
char buf[256];
UpdateData(TRUE);
wsprintf(buf,"%dh %dp %ds",gio,phut,giay);
m_timer = buf;
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
}
8. chọn menu Build.Execute DispTimer.exe để thử dịch và chạy ứng dụng, nếu làm đúng các bước trên đây, bạn sẽ thấy form hiển thị giờ giảm dần như bạn yêu cầu.
Hùng chúc mọi người thành công

Hãy cảm ơn bài viết của Nguyễn Tiến Hùng bằng cách bấm vào "" nhé!!!

Về Đầu Trang Go down

Gửi bài mớiTrả lời chủ đề này
Tiêuđề

Tạo đồng hồ chạy ngược bằng VC++ 6.0 MFC

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
DIỄN ĐÀN LỚP SƯ PHẠM TOÁN K10 - ĐẠI HỌC HẢI PHÒNG :: [SP TOÁN K10] TRUNG TÂM TIN HỌC :: Lập trình-