Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Xây dựng đồng hồ đếm ngược
#1
[Hình: donghodemnguoc.png]

Ứng dụng này dùng trong các bài thi hay tương tự...

Thuật toán như sau:
Đầu tiên ta nhập vào thời gian để đếm ngược. Trong ví dụ này ta sẽ xem xét là số phút.
Số giây (s)= số phút (t) x 60

Số giờ hiển thị H1=lấy phần nguyên(số giây/ 3600 )
Số phút hiển thị T1= lấy phần nguyên(lấy phần lẻ (số giây/3600)/60)
Số giây hiển thị: S1= lấy phần lẻ (số giây/60)
Sau mỗi giây, ta sẽ trừ số giây đi 1. Và tính lại.

Tạo 1 form mới, trên form vẽ 2 textbox, 1 đặt tên là txtThoigian, 1 đặt tên là txtDongho
Tạo 1 nút nhấn, đặt tên là cmdBatdau
Ta cần đặt một số biến:
Mã:
Dim sogiay As Long
Dim H1 As Integer
Dim T1 As Integer
Dim S1 As Integer


Code cho sự kiện cmdBatdau như sau:
Mã:
Private Sub cmdBatDau_Click()
sogiay = txtThoigian * 60
Me.TimerInterval = 1000
End Sub

Đồng thời, ở sự kiện timer của form, ta làm như sau:
Mã:
Private Sub Form_Timer()
txtDongho = dongho(sogiay)
sogiay = sogiay - 1

If sogiay < 0 Then
Me.TimerInterval = 0
End If

End Sub

Đồng thời xây dựng 1 function hiển thị đồng hồ:
Mã:
Function dongho(giay As Long) As String
H1 = Int(giay / 3600)
T1 = Int((giay Mod 3600) / 60)
S1 = giay Mod 60
dongho = Format(H1, "00") & ":" & Format(T1, "00") & ":" & Format(S1, "00")
End Function
Vậy là ta có một đồng hồ đếm ngược rồi.
Giờ mở form lên, nhập vào thời gian muốn tính ngược (giả sử 90), và nhấn bắt đầu. Rồi xem thành quả nhé!
Xem demo
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn KínhCận , quanghoasla , haquocquan , Hạ Vàng , huynguyenbd , alilibababa , maidinhdan , thdanh
#2
cảm ơn bác noname nhiều nhé. bài viết này rất hữu ích cho em và mọi người. Peacerock on!beehappy
Chữ ký của quanghoasla Hãy chia sẻ kinh nghiệm cùng mình trênThuThuatAccess nhé! Chúc vui vẻ rose
My site: My site hoặc My site
ღღღღღTài sản của quanghoasla (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#3
Có cách nào, khi đóng forms lại thì đồng hồ ngưng lại, đến khi mình mở forms lên thì nó tiếp tục chạy được không. Cám ơn.
Chữ ký của DoquangLam Hãy chia sẻ kinh nghiệm cùng mình trên ThuThuatAccess nhé! Chúc vui vẻ rose
Reply
Những người đã cảm ơn
#4
(02-07-11, 10:25 PM)DoquangLam Đã viết: Có cách nào, khi đóng forms lại thì đồng hồ ngưng lại, đến khi mình mở forms lên thì nó tiếp tục chạy được không. Cám ơn.

anh noname nên tạo sự kiện mờ đi . và hiện 1 cmdstop thì hay hơn. tránh cho người dùng ấn đi ấn lại cái nút đó nhiều lần. đồng hồ sẽ tự đếm lại.
Chữ ký của quanghoasla Hãy chia sẻ kinh nghiệm cùng mình trênThuThuatAccess nhé! Chúc vui vẻ rose
My site: My site hoặc My site
ღღღღღTài sản của quanghoasla (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#5
Các bạn chịu khó đọc code. Dòng này khi gọi sẽ khiến đồng hồ ngừng lại:
Mã:
Me.TimerInterval = 0

Việc làm một đối tượng mờ đi, ta cho thuộc tính enable của đối tượng đó là no.
Việc làm một đối tượng ẩn đi, ta cho thuộc tính visible của đối tượng đó là no.
Những ý tưởng riêng lẽ các bạn nên tự mình phát triển lấy, ở đây mình chỉ nêu ra thủ thuật làm 1 đồng hồ thế nào thôi!
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn haquocquan , Hạ Vàng
#6
Anh Noname ơi giúp em với,
Vấn Đề :
Em muốn xuất ra trên Form hoặc Report 6 dòng 8 cột trên một trang, dữ liệu lấy từ 1 table
VD : table co 240 dòng thì sẽ xuất ra 5 trang (6*8=48*5=240)
Làm hoài mà ko đuợc huhu Cry_smile
Chữ ký của paulquocdung Xin chào, mình là paulquocdung, Tham gia http://thuthuataccess.com/forum từ ngày 13-08 -11.
Reply
Những người đã cảm ơn
#7
(13-08-11, 12:09 PM)paulquocdung Đã viết: Anh Noname ơi giúp em với,
Vấn Đề :
Em muốn xuất ra trên Form hoặc Report 6 dòng 8 cột trên một trang, dữ liệu lấy từ 1 table
VD : table co 240 dòng thì sẽ xuất ra 5 trang (6*8=48*5=240)
Làm hoài mà ko đuợc huhu Cry_smile

Bạn vui lòng post câu hỏi đúng topic, nếu không có topic nào cùng chủ đề thì tạo topic mới cho vấn đề này. Chú ý đặt tiêu đề!
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
Khi giữ click chuột vào Form thì đồng hồ sẽ ngưng đếm ngược. Trường hợp này xử lý thế nào được nhỉ ??/
Chữ ký của ledungddk001 Xin chào, mình là ledungddk001, Tham gia http://thuthuataccess.com/forum từ ngày 22-08 -14.
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Hàm đọc số dùng mã Unicode trong Access Noname 28 11,695 23-03-16, 11:45 PM
Bài mới nhất: thiennamlong
  [Thủ Thuật] Hỏi_Xác định phiên bản Access đang dùng maidinhdan 1 379 18-12-15, 08:43 AM
Bài mới nhất: ongke0711
  [Thủ Thuật] 25 thủ thuật sử dụng Combobox, ListBox, Option group (Sưu tầm) ongke0711 0 557 03-12-15, 05:06 PM
Bài mới nhất: ongke0711
  [Hàm] Hàm tạo Mã (dùng cho Học Sinh, Sinh Viên, Cán Bộ, Hộ Khẩu....) Xuân Thanh 17 4,411 04-11-14, 12:25 AM
Bài mới nhất: tranthanhan1962
  Msgbox dùng Unicode Tiếng việt Noname 19 7,429 30-10-14, 05:08 PM
Bài mới nhất: tranthanhan1962

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ