Discussion Board

Results 1 to 2 of 2
  1. #1
    Registered User Jick's Avatar
    Join Date
    Feb 2009
    Location
    Russia
    Posts
    70
    Помогите разобраться. Хочу перехватить нажатие кнопки выключения и отправить его обратно в систему.

    Code:
    void CKeyCapturer::ConstructL()
    {
    	User::LeaveIfError(iWsSession.Connect());
    	iWg = RWindowGroup(iWsSession);
    	User::LeaveIfError(iWg.Construct((TUint32)&iWg, EFalse));
    	iWg.SetOrdinalPosition(-1, ECoeWinPriorityNormal+2 );
    	iWg.EnableReceiptOfFocus(EFalse);
    	CApaWindowGroupName* wn = CApaWindowGroupName::NewLC(iWsSession);
    	wn->SetHidden(ETrue);
    	wn->SetWindowGroupName(iWg);
    	CleanupStack::PopAndDestroy();
    	User::LeaveIfError(iWg.CaptureKey(EKeyDevice2, 0,0)); 
    	CActiveScheduler::Add(this);
    	Listen();
    }
    Code:
    void CKeyCapturer::RunL()
    {
    		TWsEvent e;
    		iWsSession.GetEvent(e);.
    		TInt type = e.Type();
    		if (type == EEventKeyDown)
    		{
    		if (e.Key()->iScanCode == EStdKeyDevice2 || e.Key()->iCode == EKeyDevice2)
    		{
    		WriteLog(KPower());     
    		}
    		}
    		TInt wgId = iWsSession.GetFocusWindowGroup();
    		iWsSession.SendEventToWindowGroup( wgId, e );
    		Listen();
    }
    При запуске программы кнопка выключения перестает работать. При нажатии на нее RunL вызывается, но проверка условий не проходит, т.е. до строчка WriteLog(KPower()); не выполняется.
    Почему не работает SendEventToWindowGroup и проверка условий возвращает false?

  2. #2
    Nokia Developer Moderator A.A.M.'s Avatar
    Join Date
    Jan 2008
    Location
    Moscow, Russia
    Posts
    3,308
    Пишите в лог все отловленные нажатия, это поможет разобраться почему проверка условий не срабатывает. Перед проверкой делайте что-то вроде
    Code:
    WriteLog(_L("EEventKeyDown iScanCode=%d iCode=%d"), e.Key()->iScanCode, e.Key()->iCode);

Similar Threads

  1. Как перехватить отправку СМС?
    By Stariy2003 in forum Russian Developer Forum - Форум Российских разработчиков
    Replies: 4
    Last Post: 2010-12-24, 19:54
  2. Длинное нажатие
    By SQR in forum Russian Developer Forum - Форум Российских разработчиков
    Replies: 6
    Last Post: 2010-10-15, 16:00
  3. программное нажатие на кнопки
    By jaspery in forum Russian Developer Forum - Форум Российских разработчиков
    Replies: 1
    Last Post: 2010-07-30, 11:55
  4. Как перехватить кнопку PTT?
    By Stanson_ru in forum Russian Developer Forum - Форум Российских разработчиков
    Replies: 5
    Last Post: 2010-02-21, 21:52
  5. Кнопки управления плеером N95
    By Den123 in forum Russian Developer Forum - Форум Российских разработчиков
    Replies: 13
    Last Post: 2008-11-20, 09:11

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved