This page was last modified 19:38, 4 January 2008.
Управление индикатором заряда батареи
From Forum Nokia Wiki
Индикатор заряда батареи
Индикатор заряда батареи - один из элементов панели статуса, расположенный в правой части экрана. Этот индикатор может отображать восемь уровней заряда батареи, называемых Level 0, Level 1 и т.д. до Level 7. Во время подзарядки батареи с помощью зарядного устройства, индикатор постоянно меняется, пробегая все значения от разряженного до полностью заряженного. Индикатор может принимать восемь различных состояний.
Рис. Восемь состояний индикатора заряда батареи.
В Symbian 2-й редакции, существует класс позволяющий пользователю контролировать состояние этого индикатора. Он находится в библиотеке aknnotify.lib и называется CAknBatteryNotify.
CAknBatteryNotifyсодержит следующие функции:
- void StartChargingL() - индикатор начинает пробегать все свои возможные состояния, как при зарядке батареи.
- void StopChargingL() - индикатор прекращает изменять свое состояние, последнее состояние индикатора становится его текущим состоянием.
- void NotChargingL() - индикатор прекращает изменять свое состояние, Level 0 становится его текущим состоянием.
- void SetBatteryLevelL(TInt aLevel) - установка состояния индикатора. Аргумент aLevel может принимать значения от 0 до 7.
AknBatteryNotify.h
#include <AknNotify.h> class CAknBatteryNotify : public CAknNotifyBase { public: IMPORT_C static CAknBatteryNotify* NewL(); IMPORT_C static CAknBatteryNotify* NewLC(); IMPORT_C ~CAknBatteryNotify(); IMPORT_C void NotChargingL(); IMPORT_C void SetBatteryLevelL(TInt aLevel); IMPORT_C void StartChargingL(); IMPORT_C void StopChargingL(); private: CAknBatteryNotify(); void ConstructL(); private: IMPORT_C void CAknNotifyBase_Reserved(); };
Использование CAknBatteryNotify
Изменения индикатора, вызванные экземпляром класса CAknBatteryNotify, сохраняются до тех пор, пока его состояние не изменит система, или другой экземпляр CAknBatteryNotify. Поэтому, его можно удалить сразу после использования. К примеру: следующий код установит индикатор в полностью заряженное состояние (Level 7). Не забудьте подключить библиотеку aknnotify.lib к вашему проекту.
CAknBatteryNotify* AknBatteryNotify = CAknBatteryNotify::NewLC(); AknBatteryNotify->SetBatteryLevelL( 7 ); CleanupStack::PopAndDestroy();
Здесь вы можете скачать демонстрационным пример.
Примечание: вы можете объявить перечисление для использования в SetBatteryLevelL():
enum TBatteryLevel { ELevel0, ELevel1, ELevel2, ELevel3, ELevel4, ELevel5, ELevel6, ELevel7 };
| Related Discussions | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| we want devcert's with allfiles and TCB! | Santehnik | Symbian Signing, Certification and Security | 90 | 2007-02-16 18:09 |
| RSendAsMessage - передача файлов по Bluetooth | Den123 | Russian Developer Forum - Форум Российских разработчиков | 2 | 2008-03-06 17:28 |
| Акселерометр | Den123 | Russian Developer Forum - Форум Российских разработчиков | 14 | 2007-12-10 05:45 |
| Оффтоп | Cagemts | Russian Developer Forum - Форум Российских разработчиков | 115 | 2008-07-28 13:06 |
