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

استعرض الموضوع السابق استعرض الموضوع التالي اذهب الى الأسفل

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

مُساهمة من طرف السنى في الإثنين أغسطس 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)
تحياتى لكم

السنى
.......
.......

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

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

استعرض الموضوع السابق استعرض الموضوع التالي الرجوع الى أعلى الصفحة


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