طريقة لحساب الزمن المتبقى فى حياة بطارية الجهاز

اذهب الى الأسفل

طريقة لحساب الزمن المتبقى فى حياة بطارية الجهاز

مُساهمة من طرف السنى في الإثنين أغسطس 12, 2013 2:05 pm

بسم الله الرحمن الرحيم

منذ يومين كنت قد كتب مشاركة عن كيفية الحصول على مؤشر مستوى بطارية الجهاز على الرابط التالى :


أما فى تلك المشاركة سنتعلم كيفية حساب الزمن المتبقى من حياة البطارية بالساعات و الدقائق و الثوانى ...على النحو التالى :



الكود:
Private Declare Function GetSystemPowerStatus Lib "kernel32" _
    (lpSystemPowerStatus As SYSTEM_POWER_STATUS) As Long

Private Type SYSTEM_POWER_STATUS
        ACLineStatus As Byte
        BatteryFlag As Byte
        BatteryLifePercent As Byte
        Reserved1 As Byte
        BatteryLifeTime As Long
        BatteryFullLifeTime As Long
End Type

'   MsgBox "Left minutes:" & GetBatteryTime(1)

Private Function GetBatteryTime(Optional ByVal ResultFormat As Integer) As _
    Double
    Dim SysStatus As SYSTEM_POWER_STATUS
    GetSystemPowerStatus SysStatus
    
    ' return the number of seconds
    If ResultFormat = 0 Then
        GetBatteryTime = SysStatus.BatteryLifeTime
    ' return the number of minutes
    ElseIf ResultFormat = 1 Then
        GetBatteryTime = SysStatus.BatteryLifeTime / 60
    ' return the number of hours
    Else
        GetBatteryTime = SysStatus.BatteryLifeTime / 3600
    End If

End Function

الطريقة اعلاه لحساب الزمن المتبقى للبطارية .....تعالوا نشوف كيفية عرض هذا الزمن على النافذة ...

_ لعرض الزمن بالثوانى نستخدم الشفرة التالية :

الكود:
Label1.Caption = GetBatteryTime(0)
_ لعرض الزمن بالدقائق نستخدم الشفرة التالية:

الكود:
Label1.Caption = GetBatteryTime(1)
_ لعرض الزمن بالساعات نستخدم الشفرة التالية :

الكود:
Label1.Caption = GetBatteryTime(3)
تحياتى لكم
avatar
السنى
.......
.......

تاريخ التسجيل : 18/02/2011
المساهمات : 186
النقاط : 346
التقيم : 18
الجنس : ذكر

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى