Results 1 to 7 of 7

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    tonerstationbg IgIv's Avatar
    Join Date: May:2005
    Location: Áóðãàñ
    Posts: 4,090

    Èçïîëçâàíå íà ñòðåëêèòå îò êëàâèàòóðàòà

    Èìàì åäíà ïðîãðàìà, êîÿòî ïðàâÿ íà VC++ 2008. Êàê äà íàïðàâÿ òàêà, ÷å ñòðåëêèòå îò êëàâèàòóðàòà äà ìîãà äà ãè ïîëçâàì â ïðîãðàìàòà, çàùîòî ïî ïîäðàçáèðàíå ìè ìåñòÿò àêòèâíèÿ áóòîí? PgUp, PgDn, Home è End ìîãà äà ãè ïîëçâàì, ñòðåëêèòå- íå.
    Åòî ìàëêî êîä:


    Êîä:
    ...
    this->KeyDown += (gcnew System::Windows::Forms::KeyEventHandler( this, &MoveForm::Move_KeyPress));
    ...
    ...
    ...
    private: System::Void Move_KeyPress(Object^ sender, System::Windows::Forms::KeyEventArgs^ e)
    {
    switch (e->KeyCode)
    {
    case Keys::d1 :{break;};
    case Keys::d2 :{break;};
    case Keys::d3 :{break;};
    case Keys::d4 :{break;};
    case Keys::d5 :{break;};
    case Keys::Escape:{Form::Close();};
    case Keys::Up:{break;};
    }
    e->Handled = true;
    }



    Êîÿòî è ñòðåëêà äà íàòèñíà íà êëàâèàòóðàòà- èçîáùî íå ñå ñòèãà äî èçïúëíåíèå íà êîäà, çà äðóãèòå áóòîíè ðàáîòè.
    Ðàäèîòî ïîçâîëÿâà íà ãëóïîñòòà äà ñå ÷óå, òåëåâèçèÿòà- äà ñå âèäè, à èíòåðíåò- äà ñå ðàçïðîñòðàíè.

  2. #2
    Registered User tedych's Avatar
    Join Date: Nov:2003
    Location: Ïëîâäèâ
    Posts: 17,654
    Ñåòíàë ëè ñè çà ôîðìàòà (Form) KeyPreview ïðîïúðòèòî íà true?

  3. #3
    tonerstationbg IgIv's Avatar
    Join Date: May:2005
    Location: Áóðãàñ
    Posts: 4,090
    Íå å ïðè ìåí êîäà íà ïðîãðàìàòà â ìîìåíòà, íî ìèñëÿ, ÷å äà.
    ÏÏ:
    Äà, åäíî ñëåä äðóãî ñà:
    this->KeyPreview = true;
    this->KeyDown += (gcnew System::Windows::Forms::KeyEventHandler( this, &MoveForm::Move_KeyPress));
    Last edited by IgIv; 19th September 2016 at 10:19. Reason: Äîïúëíåíèå
    Ðàäèîòî ïîçâîëÿâà íà ãëóïîñòòà äà ñå ÷óå, òåëåâèçèÿòà- äà ñå âèäè, à èíòåðíåò- äà ñå ðàçïðîñòðàíè.

  4. #4
    Registered User tedych's Avatar
    Join Date: Nov:2003
    Location: Ïëîâäèâ
    Posts: 17,654
    Äà, ïðîáëåìúò å îñíîâíî ïðè áóòîíèòå (ïðè ïðîñòà ôîðìà). Òå àâòîìàòè÷íî handle-âàò íÿêîè áóòîíè, êàòî ñòðåëêèòå, Return è äð. Àêî ôîêóñúò å â òåêñòîâî ïîëå, íåùàòà ðàáîòÿò.
    Çà âñåêè êîíòðîë (â ñëó÷àÿ áóòîíèòå) îâúððàéäâàø IsInputKey ìåòîäà, êúäåòî òåñòâàø çà ñïåöèàëíèòå êëàâèøè è âðúùàø true (êàêòî btw ãî ïèøå è â õåëïà ). Òàêà ñúîáùåíèåòî îòèâà äî ôîðìàòà, êîÿòî ìîæå äà ãî õâàíå.
    Èëè ïîëçâàø PreviewKeyDown event-a äèðåêòíî (íà áóòîíèòå - êúäåòî ñåòâàø e->isInputKey = true; çà áóòîíèòå, êîèòî òå èíòåðåñóâàò ), è â event-a êàêòî äîñåãà çà ôîðìàòà, ñè ïðàâèø îñòàíàëèòå íåùà.
    Handler-a çà áóòîíèòå ìîæå äà å åäèí è ñúù çà âñè÷êè áóòîíè, ïðîñòî ãî íàçíà÷àâàø/äîáàâÿø çà âñåêè áóòîí â íåãîâîòî ïðîïåðòè PreviewKeyDown.
    Last edited by tedych; 19th September 2016 at 12:09.

  5. #5
    tonerstationbg IgIv's Avatar
    Join Date: May:2005
    Location: Áóðãàñ
    Posts: 4,090
    Áëàãîäàðÿ, ùå ïðîáâàì è ùå ïèøà ðåçóëòàòà.
    Ðàäèîòî ïîçâîëÿâà íà ãëóïîñòòà äà ñå ÷óå, òåëåâèçèÿòà- äà ñå âèäè, à èíòåðíåò- äà ñå ðàçïðîñòðàíè.

  6. #6
    Registered User hateras's Avatar
    Join Date: Jan:2011
    Location: Kronos III
    Posts: 1,028
    Ìîæå äà ïîãëåäíåø è SetWindowsHookEx.
    ASRock B550M Pro 4; Ryzen R5 3600; 2x16 GiB G.SKILL Aegis 3200; 1TB Samsung QVO 960 + 3TB Seagate IronWolf; Zalman Z1

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 Õàðäóåð ÁÃ. Âúçìîæíî å ñúäúðæàíèåòî íà òàçè ñòðàíèöà äà å îáåêò íà àâòîðñêè ïðàâà.
iskamPC.com | mobility.BG | Bloody's Techblog | Êðèïòîâàëóòè è ìàéíèíã | 3D Vision Blog | Ìàãàçèí çà åëåêòðîííè öèãàðè